- ベストアンサー
エクセルで指定した行数の下に1行空白を入れたい。
12行、16行毎に空白行を入れたいのですが、 やりたいことは、12行目の下に1行空白、 空白行の次の行から数えて16行目の下に1行空白、 次に12行目・16行目・・・・とエクセルの最後の行まで繰り返したいのですが、宜しくお願いします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
マクロでやる方法です。実行する手順は、 ・Alt+F11でVBAの画面を起動 ・「挿入」>「標準モジュール」を選択 ・右側の画面に、以下のマクロをコピーして貼りつけ Sub Macro1() Dim CurrentRow As Integer, EndRow As Integer Dim Skip(2) As Integer Dim i As Integer Skip(1) = 12: Skip(2) = 16 With ActiveSheet CurrentRow = 1 EndRow = .Range("A65536").End(xlUp).Row Do For i = 1 To 2 If CurrentRow + Skip(i) > EndRow Then Exit Sub Else .Rows(CurrentRow + Skip(i)).Insert CurrentRow = CurrentRow + Skip(i) + 1 EndRow = EndRow + 1 End If Next Loop End With End Sub ・Alt+F11でExcelの画面に戻り、Alt+F8でMacro1を実行
その他の回答 (1)
- kigoshi
- ベストアンサー率46% (120/260)
「マクロもあり」でよろしければ、一例として Sub sample() Dim rwIdx As Long Const div1 As Integer = 12 Const div2 As Integer = 16 For rwIdx = div1 To Range("A65536").End(xlUp).Row Step div1 + div2 Rows(rwIdx).Insert Shift:=xlDown Rows(rwIdx + div2).Insert Shift:=xlDown Next End Sub マクロなし、では思いつきませんでした。 ご参考までに。
お礼
ご回答ありがとうございます。 はいマクロで大丈夫です。 早速マクロを試してみたのですが、なぜだか1700行あたりから以降 、空白行の挿入がされていませんでした・・・。 それまではできているのに、原因がわかりません。
お礼
ご丁寧なご回答ありがとうございます。 おかげさまで、やりたいことがか、無事できました。 ありがとうございました。