Excel VBA 入門講座

第2章 6.セルのクリア Excel VBA 入門講座 第2章 8.セルの範囲のコピー貼り付け
セルの挿入(範囲・行・列)セルの挿入(範囲・行・列)

セルの挿入にはInsertメソッドを使用します。引数により挿入後のセルのシフト方向を指定することができます。

メソッド引数定数内容
InsertShiftxlShiftToRight右方向にシフト
xlShiftDown下方向にシフト

引数を指定しない場合【行数 = 列数】の場合は挿入後、下方向にシフトします。 【行数 < 列数】の場合は挿入後、右方向にシフトし、【行数 > 列数】の場合は挿入後、下方向にシフトします。
セルの行または列を選択範囲とする場合、行の場合は挿入後、下方向にシフトし、列の場合は挿入後、右方向にシフトします。


'アクティブなシートのセルB1~D3の範囲の挿入(行数=列数なので下方向にシフト)
Sub InsertCell()
    Range(Cells(1,2),Cells(3,4)).Insert
End Sub

'アクティブなシートのセルB1~D3の範囲の挿入(行数>列数なので右方向にシフト)
Sub InsertCell()
    Range("B1:D4").Insert
End Sub

'Sheet1のセルB1~D3の範囲の挿入(行数<列数なので下方向にシフト)
Sub InsertCell()
     Worksheets("Sheet1").Activate
     Worksheets("Sheet1").Range(Cells(1,2),Cells(3,5))
End Sub

'Sheet1のセルB1~D3の範囲の挿入(行数>列数なので右方向にシフト)
Sub InsertCell()
     Worksheets("Sheet1").Activate
     Worksheets("Sheet1").Range("B1:D4").Insert
End Sub

'アクティブなシートの1~3行目を挿入後、下方向にシフト	
Sub InsertCell()
    Range(Cells(1,2),Cells(3,4)).EntireRow.Insert
End Sub

'アクティブなシートの1~3行目を挿入後、下方向にシフト
Sub InsertCell()
    Range("B1:D5").EntireRow.Insert
End Sub

'Sheet1の1~3行目を挿入後、下方向にシフト
Sub InsertCell()
     Worksheets("Sheet1").Activate
     Worksheets("Sheet1").Range(Cells(1,2),Cells(3,4)).EntireRow.Insert
End Sub

'Sheet1の1~3行目を挿入後、下方向にシフト
Sub InsertCell()
     Worksheets("Sheet1").Activate
     Worksheets("Sheet1").Range("B1:D3").EntireRow.Insert
End Sub

'アクティブなシートの1~3列目を挿入後、右方向にシフト	
Sub InsertCell()
    Range(Cells(1,2),Cells(3,4)).EntireColumn.Insert
End Sub

'アクティブなシートの1~3列目を挿入後、右方向にシフト	
Sub InsertCell()
    Range("B1:D3").EntireColumn.Insert
End Sub

'アクティブなシートの1~3列目を挿入後、右方向にシフト	
Sub InsertCell()
     Worksheets("Sheet1").Activate
     Worksheets("Sheet1").Range(Cells(1,2),Cells(3,4)) _
                     .EntireColumn.Insert
End Sub

'アクティブなシートの1~3列目を挿入後、右方向にシフト	
Sub InsertCell()
     Worksheets("Sheet1").Activate
     Worksheets("Sheet1").Range("B1:D3").EntireColumn.Insert
End Sub
第2章 6.セルのクリア Excel VBA 入門講座 第2章 8.セルの範囲のコピー貼り付け TOP