本記事はエクセル2019で動作確認を行っています。
実際にVBAをご自身で記入することが習得への近道です。

決まった処理を繰り返し行うにはどうしたらいいですか?
このような疑問にお答えします。
VBAの繰り返し処理には、
指定した回数だけ処理を行う。
条件に一致するまで処理を繰り返す。
の方法があります。
今回は指定した回数だけ処理を行うFor_Nextステートメントについてご紹介していきます。
(式)
Dim カウント変数 As データ型
For カウント変数=初期値 To 最終値(Step 増加値)
処理内容 (Exit For)
Next (カウント変数)
指定した回数だけ処理を行う。
下のエクセルを例にVBAの確認を行います。
A列の果物をC列に繰り返しの回数を指定して記述していきます。
問題
Sub 繰り返し1() Dim i As Long For i = 2 To 5 Cells(i, 3).Value = Cells(i, 1) Next End Sub
解説
iの変数に2から5を順番に代入していきます。
Nextまでコードが動くと、iの変数に自動的に1が足されiが5になるまで繰り返し処理を行います。
実行結果
Stepの使い方
何個かおきに処理を実行するには
For カウント変数=初期値 To 最終値 Step 増加値
と記述し、増加値に何個おきか指定します。
この時注意としては
ポイント
1つおき→2を指定
2つおき→3を指定
のように希望より1つ多く指定してください。
Sub 繰り返し2() Dim i As Long For i = 2 To 5 Step 2 Cells(i, 3).Value = Cells(i, 1) Next End Sub
解説
「Step 2」と指定することで、1つ飛ばしをして記述することができます。
実行結果
途中で繰り返し処理を抜け出す。
途中で条件に合った場合に抜け出す処理を行いたい場合には、Exit Forを使用します。
Sub 繰り返し3() Dim i As Long For i = 2 To 5 Step 2 If Range("A1").Value = "" Then Exit For Cells(i, 3).Value = Cells(i, 1) Next End Sub
解説
A1が空欄の場合はFor_Nextステートメントを抜け出すようにします。
Ifステートメントの後にExit Forを記述することで、条件に合った場合に抜け出すことができます。
この時のIfステートメントのはEnd Ifは必要ありません。
実行結果
今回For_Nextステートメントについて見てきました。
最後まで目を通していただきありがとうございます。