VBAのFor Nextループの基本構文と使い方

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」!

コメント

タイトルとURLをコピーしました