【VBA】離れた複数行を削除する

【実行結果】

行の削除するにはDeleteメソッドを使いますが、削除する行を指定するには2つの方法があります。(※離れた行はRowsによる指定はできません)

サンプルコードでは、2行目、4行目、6~8行目を削除します。

Rangeを使った行の削除

Rangeの引数で対象行を指定します。

離れている行はカンマ(,)区切り、連続した行はコロン(:)で指定します。

コード

 

解説

2行目、4行目、6~8行目が削除されます。

この時、2行目だけを指定する時も、開始行と終了行に2を指定しないとエラーになります。
○ Range(“2:2,
× Range(“2,

指定したら、Deleteメソッドで削除します。

EntireRowを使った行の削除

対象セルを指定して、その行を削除したい場合は、EntireRowを使います。EntireRowは、指定したセルの対象行を返してくれます。

対象セル自体は、Rangeを使って指定します。

指定したら、Deleteメソッドで削除します。

コード

 

解説

Rangeでのセル指定では、離れているセルはカンマ(,)区切り、連続したセルはコロン(:)を使います。

サンプルコードでは、RangeでセルA2、A4、A6~A8のセルが指定されています。

なので、EntireRowは2行目、4行目、6~8行目になり、EntireRowをDeleteすることで2行目、4行目、6~8行目が削除されます。

POINT
・Rangeの引数は、全体をダブルクォーテーションで囲む
・離れているセルはカンマ(,)で区切る
・連続したセルはコロン(:)でつなげる
注意すること
連続した行はRowsで削除できましたが、離れた行ではRowsによる削除はできません。

 

その他テクニックは、次の記事を参考にしてください。

【VBA】行の削除とテクニック
【実行結果】 VBAで行を削除する時は、Deleteメソッドを使用します。 削除する行を指定するには、RangeやRowなど3つの方法があります。 サンプルコードでは、2行目を削除します。 Rangeを使った行指...

関連記事

タイトルとURLをコピーしました