空白行をN行おきに挿入 マクロ講座 

一行おきに空白行を挿入するマクロ~

空白行を1行おきに挿入すると、データが見やすくなります。とくにデータが多い場合や文字列が長い場合などは顕著です。
それで、みなさん一行おきに空白行を挿入するわけですが、データが多いと一行おきに空白行を挿入する作業は結構たいへんです。
Excel技で一行おきに空白行を挿入を紹介していますが、今回は、それをマクロでスマートにやってしまおうというわけなんです。
一行おきに空白行を挿入するマクロ
(サンプルファイルは、こちらから 2013マクロ講座46回サンプルデータ

空白行を1行おきに挿入する

以下のサンプルに空白行を挿入します。

サンプルの行は、6行あります。
1行おきに空白行を挿入するマクロ
この最終行をもとめるには、Endプロパティを使います。
A列の1行目から、下方向に(xlDown)へ検索し最終行を探します。
最終行 = Range("A1").End(xlDown).Row
何回行を挿入するかは、最終行から、2行目までの変数iにします。
Sub 空白行を1行おきに挿入()
    Dim i As Integer, 最終行 As Integer
    最終行 = Range("A1").End(xlDown).Row
    For i = 最終行 To 2 Step -1
            Cells(i, "A").EntireRow.Insert
            Cells(i, "A").EntireRow.ClearFormats
    Next
End Sub
Cells(i, "A").EntireRow.ClearFormats としたのは、書式が設定されていると書式をコピーしてしまうので、クリアするためです。
コードを実行すると、 3行おきに空白行を挿入するマクロ

空白行を2行おきや3行おきに挿入する

上の例では、空白行を1行おきに挿入しましたが、場合によっては2行おきや3行おきに空白行を挿入したいケースもあります。
3行おきに空白行を入れたい場合は、Step -3とします。
3行おきに空白行を挿入するマクロ
Sub 空白行を3行おきに挿入()
    Dim i As Integer, 最終行 As Integer
    最終行 = Range("A1").End(xlDown).Row
    For i = 最終行 - 2 To 4 Step -3
            Cells(i, "A").EntireRow.Insert
            Cells(i, "A").EntireRow.ClearFormats
    Next
End Sub
コードを実行すると、空白行が3行おきに挿入されます。
3行おきに空白行を挿入するマクロ
空白行を削除したい時は、マクロ講座21回のマクロの記録で作成したマクロを使うことができます。
今日の講義は以上です。お疲れ様でした。
スポンサーリンク
スポンサーリンク