Excel VBA セルを挿入する Insertメソッド 削除する Deleteメソッド

スポンサーリンク

Insert【インサート】メソッド

指定したセル範囲にセルを挿入するには、Range【レンジ】オブジェクトのInsert【インサート】メソッドを使用します。挿入する場所にあるセルを右方向または下方向に移動します。挿入後のセルに隣接したセルの書式を適用する方向を指定できます。

Insert【インサート】メソッドの書式と設定値(引数)の説明

[]内は省略可能です。
オブジェクト.Insert[(Shift,CopyOrigin)]

  • オブジェクト(必須)
    セルを挿入するセルやセル範囲をRangeオブジェクトを指定します。
  • Shift【シフト】(省略可)
    セルを挿入後、元の位置にあったセルを移動する方向をxlInsertShiftDirection列挙型の定数で指定します。省略した場合はExcelによって自動的に移動されます。

    xlInsertShiftDirection列挙型
    定数内容
    xlShiftDownセル挿入時下方向にシフトします。
    xlShiftToRightセル挿入時右方向にシフトします。
  • CopyOrigin【コピーオリジン】(省略可)
    挿入後のセルに隣接するどのセルの書式を適用するかをxlInsertFormatOrigin列挙型の定数で指定します。省略した場合はExcelによって自動的に適用されます。

    xlInsertFormatOrigin列挙型
    定数内容
    xlFormatFromLeftOrAbove隣接した左または上のセルの書式を適用します。
    xlFormatFromRightOrBelow隣接した右または下のセルの書式を適用します。

3行目に行を下方向にシフトし下のセルの書式を適用して挿入するコード例

Sub 行挿入()
Rows(3).Insert shift:=xlShiftDown _
, CopyOrigin:=xlFormatFromRightOrBelow
End Sub

Delete【デリート】メソッド

指定したセル範囲のセルを削除するには、Range【レンジ】オブジェクトのDelete【デリート】メソッドを使用します。セルを削除した後、セルの詰める方向を指定することができます。

Delete【デリート】メソッドの書式と設定値の説明

[]内は省略可能です。
オブジェクト.Delete[(Shift)]

  • オブジェクト(必須)
    削除するセルやセル範囲をRangeオブジェクトを指定します。
  • Shift【シフト】(省略可)
    セルを削除後にセルの移動方向をxlDeleteShiftDirection列挙型の定数で指定します。省略した場合はExcelによって自動的に移動されます。

    xlDeleteShiftDirection列挙型
    定数内容
    xlShiftToLeftセルは左方向にシフトします。
    xlShiftUpセルは上方向にシフトします。

3行目の3列目までのセルを削除して上方向にシフトするコード例

Sub 行削除()
Range("A3:C3").Delete shift:=xlShiftUp
End Sub

以上でセルを挿入する Insert【インサート】メソッド 削除する Delete【デリイト】メソッドについての解説を終了します。ありがとうございました。

スポンサーリンク

関連記事・広告