今の操作を具体化すれば
2~5行目を削除
3~6行目を削除
の繰り返しですよね
ならば
Sub ボタン1_Click()
i = 2
Do While Range("A" & i).Value <> ""
Rows(i & ":" & i + 3).Delete Shift:=xlUp
i = i + 1
Loop
End Sub
でよろしいかと
>現在は2~5行指定デリート 7~10指定デリート… で手動でやっております(汗)
「実際に」行っているのはそうじゃないことを、実際にエクセルを触ってもう一度ご自分の目と手で確認してください。
で、それをマクロにすると、大体こんな感じになります。
sub macro1()
dim r as long
r = 2
do until cells(r, "A") = ""
rows(r & ":" & r+3).delete shift:=xlshiftup
r = r + 1
loop
end sub
1000行程度ならこんな感じで良いかと。
行数が、5で割ると1余る行のみ残して削除しています。
なお、削除は1行づつやってます。
Sub Sample()
Application.ScreenUpdating = False
nLast = Range("A1").End(xlDown).Row
For nRow = nLast To 2 Step -1
If nRow Mod 5 <> 1 Then Cells(nRow, 1).Delete Shift:=xlUp
Next nRow
Application.ScreenUpdating = True
End Sub
こんにちは!
データの最終行から4行削除 → 5行目を残しその2行上から4行を削除・・・
の繰り返しだとすると
Sub Sample1()
Dim i As Long
For i = Cells(Rows.Count, "A").End(xlUp).Row To 5 Step -5
Rows(i - 3 & ":" & i).Delete
Next i
End Sub
こんな感じではどうでしょうか?
※ データ数は必ず5の倍数になっているという前提です。m(_ _)m
お礼
ありがとうございます。 やりたいことがスマートにできました。