• ベストアンサー

for next教えて下さい(;_;)

以下のように1行残して9行消してという操作を連続してやりたいのですがfor nextをどう使えばうまくいくのかわかりません。誰か教えて下さいお願いしますm(_ _)m Sub Macro1() ' ' Macro1 Macro ActiveWindow.SmallScroll Down:=5 Rows("10:18").Select Selection.Delete Shift:=xlUp Rows("11:19").Select Selection.Delete Shift:=xlUp End Sub

質問者が選んだベストアンサー

  • ベストアンサー
  • maruru01
  • ベストアンサー率51% (1179/2272)
回答No.1

こんにちは。maruru01です。 仮に1行残して9行削除という動作を10回連続で行う場合は、 For i = 1 To 10   Rows((9 + i) & ":" & (9 + i + 8)).Select   Selection.Delete Shift:=xlUp Next i この場合は、9、19、29・・・行目が残ります。 Rowsの中の"9"を替えれば、残す行を変更出来ます。

その他の回答 (1)

回答No.2

初めまして。次のように操作します。 Sub Test for i = 1 to 18 rows(i & ":" & i).delete Shift:=xlShiftup next i このコードを実行すると1行目から18行目まで削除されます。 for i = 1 to 18 if i = 残したい行番号 then exit for rows(i & ":" & i).delete Shift:=xlShiftup next i このコードを実行すると、1行目から18行目で残したい行番号以外の行が削除されます。 もし、これで解決できないような時は、 >1行残して9行消してという操作を連続してやりたい この操作の意味をもう少し詳しく具体的に教えて下さい。貴方様のおやりになりたいことがすぐ実行できるサンプルマクロを組んでみたいと思います。