【実行結果】
行の削除するにはDeleteメソッドを使いますが、削除する行を指定するには2つの方法があります。(※離れた行はRowsによる指定はできません)
サンプルコードでは、2行目、4行目、6~8行目を削除します。
Rangeを使った行の削除
Rangeの引数で対象行を指定します。
離れている行はカンマ(,)区切り、連続した行はコロン(:)で指定します。
コード
1 2 |
'2行目、4行目、6~8行目を削除 Range("2:2,4:4,6:8").Delete |
解説
2行目、4行目、6~8行目が削除されます。
この時、2行目だけを指定する時も、開始行と終了行に2を指定しないとエラーになります。
○ Range(“2:2,
× Range(“2,
指定したら、Deleteメソッドで削除します。
EntireRowを使った行の削除
対象セルを指定して、その行を削除したい場合は、EntireRowを使います。EntireRowは、指定したセルの対象行を返してくれます。
対象セル自体は、Rangeを使って指定します。
指定したら、Deleteメソッドで削除します。
コード
1 2 |
'2行目、4行目、6~8行目を削除 Range("A2,A4,A6:A8").EntireRow.Delete |
解説
Rangeでのセル指定では、離れているセルはカンマ(,)区切り、連続したセルはコロン(:)を使います。
サンプルコードでは、RangeでセルA2、A4、A6~A8のセルが指定されています。
なので、EntireRowは2行目、4行目、6~8行目になり、EntireRowをDeleteすることで2行目、4行目、6~8行目が削除されます。
POINT
・Rangeの引数は、全体をダブルクォーテーションで囲む
・離れているセルはカンマ(,)で区切る
・連続したセルはコロン(:)でつなげる
・Rangeの引数は、全体をダブルクォーテーションで囲む
・離れているセルはカンマ(,)で区切る
・連続したセルはコロン(:)でつなげる
注意すること
連続した行はRowsで削除できましたが、離れた行ではRowsによる削除はできません。
連続した行はRowsで削除できましたが、離れた行ではRowsによる削除はできません。
その他テクニックは、次の記事を参考にしてください。

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