エクセルマクロの解説: 1行おきに空白行

 


エクセルマクロの解説: 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

コードの解説

  1. サブルーチンの定義

    Sub InsertBlankRows()
    
    • Sub キーワードでサブルーチンを定義しています。サブルーチン名は「InsertBlankRows」です。
  2. 変数の宣言

    Dim i As Long
    Dim lastRow As Long
    
    • ilastRow という2つの変数を宣言しています。i はループカウンターとして使用され、lastRow は最終行の行番号を格納します。
  3. 最終行の取得

    lastRow = Cells(Rows.Count, 1).End(xlUp).Row
    
    • Cells(Rows.Count, 1) は、列A(1列目)の最終行を表します。
    • End(xlUp) は、最終行から上方向に移動して最初の非空セルを探すメソッドです。
    • Row プロパティは、セルの行番号を取得します。これにより、最終行の行番号が lastRow に代入されます。
  4. 空白行の挿入

    For i = lastRow To 2 Step -1
        Rows(i).Insert Shift:=xlDown
    Next i
    
    • For ループで最終行から2行目までの各行を処理します。
    • Rows(i).Insert Shift:=xlDown は、i行目の行を下に1行挿入する操作です。

使い方

  1. エクセルファイルを開きます。
  2. Alt + F11 キーを押してVBAエディタを開きます。
  3. 新しいモジュールを挿入し、上記のコードを貼り付けます。
  4. マクロを実行すると、最終行から2行目までの各行に空白行が挿入されます。

このマクロを使って、エクセルのデータ整理を効率的に行いましょう!