セルの削除にはDeleteメソッドを使用します。引数により削除後のセルのシフト方向を指定することができます。
メソッド | 引数 | 定数 | 内容 |
---|---|---|---|
Delete | Shift | xlShiftToLeft | 左方向にシフト |
xlShiftUp | 上方向にシフト |
引数を指定しない場合、【行数 = 列数】の場合は削除後、上方向にシフトします。
【行数 < 列数】の場合は左方向にシフトし、【行数 > 列数】の場合は削除後、上方向にシフトします。
セルの行または列を選択範囲とする場合、行の場合は削除後、上方向にシフトし、
列の場合は削除後、左方向にシフトします。
'アクティブなシートのセルB1~D3の範囲の削除(行数=列数なので上方向にシフト)
Sub DeleteCell()
Range(Cells(1,2),Cells(3,4)).Delete
End Sub
'アクティブなシートのセルB1~D3の範囲の削除(行数>列数なので左方向にシフト)
Sub DeleteCell()
Range("B1:D4").Delete
End Sub
'Sheet1のセルB1~D3の範囲の削除(行数<列数なので上方向にシフト)
Sub DeleteCell()
Worksheets("Sheet1").Activate
Worksheets("Sheet1").Range(Cells(1,2),Cells(3,5)).Delete
End Sub
'Sheet1のセルB1~D3の範囲の削除(引数により上方向にシフト)
Sub DeleteCell()
Worksheets("Sheet1").Activate
Worksheets("Sheet1").Range("B1:D4").Delete Shift := xlShiftUp
End Sub
'Sheet1のセルB1~DEの範囲の削除(引数により左方向にシフト)
Sub DeleteCell()
Worksheets("Sheet1").Activate
Worksheets("Sheet1").Range(Cells(1,2),Cells(3,5)) _
.Delete Shift:=xlShiftToLeft
End Sub
'アクティブなシートの1~3行目を削除後、上方向にシフト
Sub DeleteCell()
Range(Cells(1,2),Cells(3,4)).EntireRow.Delete
End Sub
'アクティブなシートの1~3行目を削除後、上方向にシフト
Sub DeleteCell()
Range("B1:D5").EntireRow.Delete
End Sub
'Sheet1の1~3行目を削除後、上方向にシフト
Sub DeleteCell()
Worksheets("Sheet1").Activate
Worksheets("Sheet1").Range(Cells(1,2),Cells(3,4)).EntireRow.Delete
End Sub
'Sheet1の1~3行目を削除後、上方向にシフト
Sub DeleteCell()
Worksheets("Sheet1").Activate
Worksheets("Sheet1").Range("B1:D3").EntireRow.Delete
End Sub
'アクティブなシートの1~3列目を削除後、左方向にシフト
Sub DeleteCell()
Range(Cells(1,2),Cells(3,4)).EntireColumn.Delete
End Sub
'アクティブなシートの1~3列目を削除後、左方向にシフト
Sub DeleteCell()
Range("B1:D3").EntireColumn.Delete
End Sub
'アクティブなシートの1~3列目を削除後、左方向にシフト
Sub DeleteCell()
Worksheets("Sheet1").Activate
Worksheets("Sheet1").Range(Cells(1,2),Cells(3,4)) _
.EntireColumn.Delete
End Sub
'アクティブなシートの1~3列目を削除後、左方向にシフト
Sub DeleteCell()
Worksheets("Sheet1").Activate
Worksheets("Sheet1").Range("B1:D3").EntireColumn.Delete
End Sub