Excel VBAで行の挿入をRowsを使う方法とEntireRowで行う方法

Rowsで行を挿入する場合は引数に行番号を指定します。

EntireRowは行全体を参照するプロパティで、指定したセルを含む行全体に対して処理を行うことができます。ここではRangeオブジェクトでセルを指定します。RowsとEntireRowで1行の挿入方法と複数行の挿入方法の各2種類のVBAを掲載します。

挿入はInsertメソッドを使用します。




Homeに戻る > Excel セルのTipsへ

下の品番別の販売数が入力されているシートをサンプルに使用します。
品番別の販売数が入力されているシート

Rowsを使い1行挿入する

Rowsで6行目に行を挿入するVBAです。
Rowsを使い1行挿入するVBA

・Rows(6)で6行目を指定し、Insertメソッドで挿入します。

Sub MyInsert()
    Rows(6).Insert
End Sub

実行結果のシートです。
6行目に行が挿入され空白のセルができています。
6行目に行が挿入された

Rowsを使い複数行を挿入する

Rowsで6行目から8行目に行を挿入するVBAです。
Rowsを使い複数行を挿入するVBA

・「:」コロンで2つの行を指定します。

Sub MyInsert()
    Rows("6:8").Insert
End Sub

実行結果のシートです。
6行目から8行目に行が挿入され空白のセルができています。
6行目から8行目に行が挿入された

行番号を変数で行う場合は、「& ":" &」のように、「":"」を&でつなぎます。
行番号を変数で行うVBA

・実行結果は、Rows("6:8")と同じです。

Sub MyInsert()
    Dim r1 As Long
    Dim r2 As Long
    
    r1 = 6
    r2 = 8
    Rows(r1 & ":" & r2).Insert
End Sub

EntireRowを使い1行挿入する

EntireRowでC6セルが含まれる行に新しい行を挿入するVBAです。
EntireRowを使い1行挿入するVBA

・Rangeで挿入する行に含まれるセルを指定します。

Sub MyInsert()
    Range("C6").EntireRow.Insert
End Sub

実行結果のシートです。
C6セルが含まれる行ですから、6行目に新しい行が挿入されています。
6行目に新しい行が挿入された

EntireRowを使い複数行を挿入する

EntireRowでB4からC6セルが含まれる行に新しい行を挿入するVBAです。
EntireRowを使い複数行を挿入するVBA

・Rangeで挿入する行に含まれるセルの範囲を指定します。

Sub MyInsert()
    Range("B4:C6").EntireRow.Insert
End Sub

実行結果のシートです。
B4からC6セルが含まれる行ですから、4行目から6行目に新しい行が挿入されています。
4行目から6行目に新しい行が挿入された

Homeに戻る > Excel セルのTipsへ

■■■
このサイトの内容を利用して発生した、いかなる問題にも一切責任は負いませんのでご了承下さい
■■■
当ホームページに掲載されているあらゆる内容の無許可転載・転用を禁止します


Copyright (c) Excel-Excel ! All rights reserved