VBAの For Nextループ は、決まった回数だけ繰り返し処理を行う 場合に使用します。
繰り返す回数が明確なときに最適です。
目次
1. For Nextループの基本構文
For 変数 = 開始値 To 終了値 [Step 増減値]
'繰り返し処理
Next 変数
✅ ポイント:
変数
にはループカウンタ(通常はi
やn
など)を指定開始値
から終了値
まで1ずつ増加しながらループを実行Step
を使うと増減幅を変更可能(省略時は1
)
2. 基本的なFor Nextループの例
例①:1から5まで繰り返す
Dim i As Integer
For i = 1 To 5
Debug.Print "現在の値:" & i
Next i
出力結果:
現在の値:1
現在の値:2
現在の値:3
現在の値:4
現在の値:5
3. Stepを使ったループ
通常、カウンタは1ずつ増加しますが、Step
を指定すると増減幅を変更できます。
例②:2ずつ増加するループ
Dim i As Integer
For i = 1 To 10 Step 2
Debug.Print "現在の値:" & i
Next i
出力結果:
現在の値:1
現在の値:3
現在の値:5
現在の値:7
現在の値:9
4. 逆順のFor Nextループ
Step -1
を指定すると、カウントダウンすることができます。
例③:10から1まで減少するループ
Dim i As Integer
For i = 10 To 1 Step -1
Debug.Print "現在の値:" & i
Next i
出力結果:
現在の値:10
現在の値:9
現在の値:8
...
現在の値:1
5. ループを途中で抜ける(Exit For)
条件を満たしたときにループを終了するには、Exit For
を使います。
例④:3になったらループを終了
Dim i As Integer
For i = 1 To 5
If i = 3 Then Exit For
Debug.Print "現在の値:" & i
Next i
出力結果:
現在の値:1
現在の値:2
(3でループ終了)
6. まとめ
用途 | 構文 |
---|---|
通常のループ | For i = 1 To 5 |
増分を変更 | For i = 1 To 10 Step 2 |
逆順のループ | For i = 10 To 1 Step -1 |
途中で抜ける | If 条件 Then Exit For |
決まった回数だけ繰り返す場合は「For Next」!
コメント