エクセルマクロの解説: 1行おきに空白行
目的
このマクロは、指定された範囲のセルに対して1行おきに空白の行を挿入するものです。具体的には、最終行から2行目までの各行に新しい空白行を挿入します。
コード
Sub InsertBlankRows()
Dim i As Long
Dim lastRow As Long
' 最終行を取得
lastRow = Cells(Rows.Count, 1).End(xlUp).Row
' 1行おきに空白の行を挿入
For i = lastRow To 2 Step -1
Rows(i).Insert Shift:=xlDown
Next i
End Sub
コードの解説
サブルーチンの定義
Sub InsertBlankRows()
Sub
キーワードでサブルーチンを定義しています。サブルーチン名は「InsertBlankRows」です。
変数の宣言
Dim i As Long Dim lastRow As Long
i
とlastRow
という2つの変数を宣言しています。i
はループカウンターとして使用され、lastRow
は最終行の行番号を格納します。
最終行の取得
lastRow = Cells(Rows.Count, 1).End(xlUp).Row
Cells(Rows.Count, 1)
は、列A(1列目)の最終行を表します。End(xlUp)
は、最終行から上方向に移動して最初の非空セルを探すメソッドです。Row
プロパティは、セルの行番号を取得します。これにより、最終行の行番号がlastRow
に代入されます。
空白行の挿入
For i = lastRow To 2 Step -1 Rows(i).Insert Shift:=xlDown Next i
For
ループで最終行から2行目までの各行を処理します。Rows(i).Insert Shift:=xlDown
は、i行目の行を下に1行挿入する操作です。
使い方
- エクセルファイルを開きます。
Alt
+F11
キーを押してVBAエディタを開きます。- 新しいモジュールを挿入し、上記のコードを貼り付けます。
- マクロを実行すると、最終行から2行目までの各行に空白行が挿入されます。
このマクロを使って、エクセルのデータ整理を効率的に行いましょう!