セルの削除

広告

セルを削除する方法を確認します。削除したいRangeオブジェクトに対して「Delete」メソッドを使います。セルが削除されると削除されたセルの位置に左方向又は上方向にセルを移動します。

Dim range1 As Range

Set range1 = Range("A1")
range1.Delete Shift:=xlShiftToLeft

削除後にセルを移動させる方向を「Shift」引数を使って指定します。指定できる値は次のどちらかです。

定数移動方向
xlShiftToLeft左方向へシフトする
xlShiftUp上方向へシフトする

移動方向に関する引数は省略可能です。省略した場合にどちらの方向へセルが移動するかはExcelが判断します。

まとめて次のように記述しても構いません。

Range("A1:B3").Delete Shift:=xlShiftUp

サンプルプログラム

では簡単なサンプルで試してみましょう。

下記のようなExcelファイルを用意します。

セルの削除

セルC2を削除し左方向へ移動させ、次にセル範囲C3:D4を削除し上方向へ移動させてみます。

testcelledit1.bas

Sub テスト()

    Dim range1 As Range
        
    Set range1 = Range("C2")
    range1.Delete Shift:=xlShiftToLeft

    Range("C3:D4").Delete Shift:=xlShiftUp

End Sub

上記マクロを実行すると次のようになります。

セルの削除

Excel VBA入門の他の記事を見てみる

( Written by Tatsuo Ikura )

関連記事 (一部広告含む)