行を挿入したり削除するとき、周囲のセルをどちらに移動するかを選択します。
行を挿入するときはInsertメソッドを、行を削除するときはDeleteメソッドを使います。
引数を使って挿入・削除時のセルの方向を指定します。
Insertメソッドで行を挿入する
挿入位置を指定して、行を挿入します。
■ 行挿入の1例目
■ コード内を「Wクリック」で選択できます。
[code]
Sub サンプル4105_1()
Range(“A4”).Select
Selection.EntireRow.Insert
Selection.EntireRow.Interior.Pattern = xlNone
End Sub
[/code]
• Range(“A4”).Select
’セルA4を選択します。
• Selection.EntireRow.Insert
’選択したセルに行を挿入します。
上の書式をコピーするので、背景色が付きます。
• Selection.EntireRow.Interior.Pattern = xlNone
’セルの「塗りつぶしをなし」にします。
■ 行挿入の2例目
途中に挿入する場合は、EntireRow.Insertで簡単に挿入できる。
■ コード内を「Wクリック」で選択できます。
[code]
Sub サンプル4105_2()
Range(“A5”).Select
Selection.EntireRow.Insert
End Sub
[/code]
Rowsプロパティで行を挿入する
Rowsプロパティ は、Rowsの引数にRows(1)で1行目、Rows(3)で3行目のように挿入箇所を指定します。
■ コード内を「Wクリック」で選択できます。
[code]
Sub サンプル4105_3()
Rows(5).Insert
End Sub
[/code]
• Rows(5).Insert
’5行目に行を挿入します。
Insert Shiftで行を挿入する
次の表を例に使います。
セルA4を基準にして、行を挿入します。
■ コード内を「Wクリック」で選択できます。
[code]
Sub サンプル4105_4()
Range(“A4”).Resize(1, 6) _
.Insert Shift:=xlShiftDown, _
CopyOrigin:=xlFormatFromRightOrBelow
End Sub
[/code]
• Range(“A4”).Resize(1, 6) _
.Insert Shift:=xlShiftDown, _
CopyOrigin:=xlFormatFromRightOrBelow
’セルA4を基準にして、右方向に1行、6列分のセルを挿入します。
セルを挿入した後で、既存のセルを下方向に移動し下のセルの書式をコピーします。
■ Insertの引数
Shift設定値 | 内 容 |
---|---|
xlShiftDown | セルを挿入後、下にずらす。 |
xlShiftToRight | セルを挿入後、右にずらす。 |
CopyOrigin設定値 | 内 容 |
xlFormatFromLeftOrAbove | 上、または左のセルから書式をコピーする。 |
xlFormatFromRightOrBelow | 下、または右のセルから書式をコピーする |
範囲を指定して行を挿入する
行の範囲を指定して、行を挿入することができます。
■ コード内を「Wクリック」で選択できます。
[code]
Sub サンプル4105_5()
Range(“5:6”).Insert
‘Range(“A5:F6”).Insert
‘Rows(“5:6”).Insert
End Sub
[/code]
• Range(“5:6”).Insert
’5行目と6行目に挿入します。
• Range(“A5:F6”).Insert
’セルA5~セルF6を、指定しても同じ結果になります。
• Rows(“5:6”).Insert
’Rowsプロパティ で、5行と6行を指定しても同じ結果になります。
Deleteメソッドで行を削除する
■ 行を削除する1例目
セルA4の行を削除する。
■ コード内を「Wクリック」で選択できます。
[code]
Sub サンプル4105_8()
Range(“A4”).Resize(1, 6).Delete
End Sub
[/code]
• Range(“A4”).Resize(1, 6).Delete
’セルA4を基準にして、1行、6列分を削除する。
■ 行を削除する2例目
■ コード内を「Wクリック」で選択できます。
[code]
Sub サンプル4105_9()
Range(“A4”, Range(“A4”).End(xlToRight)) _
.Delete Shift:=xlShiftUp
End Sub
[/code]
• Range(“A4”, Range(“A4”).End(xlToRight)) _
.Delete Shift:=xlShiftUp
’セルA4を基準にして、右端までのセルを削除嶋あす。
セルの削除後は、下にあったセルを上方向にずらします。
■関連記事■ 列を選択するマクロ
■関連記事■ 行の挿入と削除
■関連記事■ 列の挿入と削除
■関連記事■ 行の非表示と再表示のマクロ
■関連記事■ 列の非表示と再表示のマクロ
■関連記事■ 行の高さを設定する
■関連記事■ 列幅を設定する
以上で「行の挿入と削除」の説明を終わります。