
エクセルで作成した表中に測定結果を集約し、管理しております。
測定を行った際に得られる数値を項目毎に対象列のセルへ集積しているのですが、
測定を行っていない項目のセルは空白となるため、空白セルを左詰めで一括削除したく望んでおります。
下記のようにマクロの記録を使用してコードを取得し、実行してみたのですが、エラーになってしまいます。
Private Sub CommandButton1_Click()
Sheets("A").Select
Range("B:AH").Select
Selection.SpecialCells(xlCellTypeBlanks).Select
Selection.Delete Shift:=xlToLeft
Range("A1").Select
End Sub
対象範囲(列)はB列からAH列としておりますが、測定項目が増えると記載列も増えますので、
範囲を柔軟に変更出来るような方法で希望しております。
お手数ですがご教授いただけませんでしょうか?
宜しくお願い致します。
No.3ベストアンサー
- 回答日時:
提示されたコードでは、実行エラー(RangeクラスのSelectメソッドが失敗しました)に
なりますね。
Private Sub CommandButton1_Click()
Sheets("A").Range("B:AH").SpecialCells(xlCellTypeBlanks).Delete Shift:=xlToLeft
End Sub
とか?
>対象範囲(列)はB列からAH列としておりますが、測定項目が増えると記載列も増えますので、
>範囲を柔軟に変更出来るような方法で希望しております。
求める結果がわからなかったです。
希望通りの動作が得られました。
とても感謝しております。ありがとうございました。
>求める結果がわからなかったです。
大変申し訳ありませんでした。
Range("B:AH")の変更で対応することを望んでおりました。
No.4
- 回答日時:
意味が違ってるかも知れませんが…
先に処理したい範囲を選択しておいて、その範囲に対して同様の処理(左詰め)を行いたいのであれば、
Private Sub CommandButton1_Click()
Selection.SpecialCells(xlCellTypeBlanks).Delete Shift:=xlToLeft
End Sub
みたいにすればよいのでは?
選択したものが、セル範囲でない場合はエラーになるので、最初にそのチェックを入れておいたほうがよいですけど。
違っていたら、無視してください。
ご回答いただいたコードの前部(Selection)を
Sheets("A").Range("B:AH") に変更して解決致しました。
ご教授いただき、ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
プロが教える店舗&オフィスのセキュリティ対策術
中・小規模の店舗やオフィスのセキュリティセキュリティ対策について、プロにどう対策すべきか 何を注意すべきかを教えていただきました!
-
エクセル 空白を除き左に詰めたいのですが・・・
Windows 8
-
EXCELのVBAで空白列を削除して左づめにできますか?
Access(アクセス)
-
空白セルをとばして転記
Visual Basic(VBA)
-
4
vba 2つの条件が一致したらコピーして別シートに値のみ貼り付け
Visual Basic(VBA)
-
5
【EXCEL】【VBA】空欄は飛ばして処理する方法を教えて下さい。
Excel(エクセル)
-
6
空白セルをつめる。
Excel(エクセル)
-
7
Excelの空文字セルの削除方法を教えてください
Excel(エクセル)
-
8
VBAで空白セルにのみ数値を代入する方法
Excel(エクセル)
-
9
EXCELのデータで空白列を削除したい
Excel(エクセル)
-
10
エクセル関数 空白(関数あり)の列を削除し、左に詰めたい
Excel(エクセル)
-
11
【Excel VBA】特定の列以外を削除
Excel(エクセル)
-
12
エクセルのマクロで、選択範囲の空白行を削除する方法
Excel(エクセル)
-
13
特定の複数のシートに同じ処理をさせたい
Excel(エクセル)
-
14
ExcelのVBAで連番を振る。
Excel(エクセル)
-
15
EXCEL VBAで全選択範囲の解除
Excel(エクセル)
-
16
エクセル 値の入ったセルを左に寄せる
Excel(エクセル)
-
17
【Excel】【VBA】空白のセルに上のデータを入力する方法
その他(Microsoft Office)
-
18
Excel VBAでのWorksheet_Changeが動作しない原因
Excel(エクセル)
-
19
別シートに空白セルを詰めデータを自動コピー
Excel(エクセル)
-
20
Excel VBA データのない列の空白のある行を全て削除
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
人気Q&Aランキング
-
4
VBAを使って検索したセルをコピ...
-
5
Cellsのかっこの中はどっちが行...
-
6
VBAを用いて条件付きの平均値、...
-
7
Excelで、あるセルの値に応じて...
-
8
Changeイベントでの複数セルの...
-
9
エクセルVBA、特定条件で行を追加
-
10
VBAで指定範囲内の空白セルを左...
-
11
ファイルをフォルダに自動振り...
-
12
マクロ 最終列をコピーして最終...
-
13
エクセルVBA シートモジュール...
-
14
DataGridViewに空白がある場合...
-
15
データグリッドビューの一番最...
-
16
Worksheets メソッドは失敗しま...
-
17
期限を超えた日付に警告のメッ...
-
18
VBScriptでfindを使うには??
-
19
VBAでセルアドレスに変数を使い...
-
20
比較して等しくなかったらセル...
おすすめ情報
公式facebook
公式twitter