ID : 129
For...Next
機能
指定した回数だけ一連のステートメントを繰り返します。
構文
For カウンタ = 初期値 To 最終値[ Step 増分] 'Statements Next[カウンタ]
指定項目
- カウンタ
- カウンタとして使用する変数を指定します。数値型の変数を指定します。
- 初期値
- カウンタで指定した変数の初期値として代入する値を指定します。
- 最終値
- カウンタの最終値を指定します。
- 増分
- 一連のステートメントを1回実行する毎にカウンタに加算する値を指定します。省略可能です。省略時は"1"です。
解説
指定した回数だけ一連のステートメントを繰り返します。
カウンタに指定した変数に初期値を代入し、実行条件を判定します。実行条件が真(True)ならば、指定した一連のステートメントを実行します。一連のステートメントを1回実行するたびにカウンタの変数に増分に指定した値を加算します。

ステートメントの実行条件
指定したステートメントの実行条件判定は指定したステートメントが実行される前に行います。増分の値によって終了条件が異なります。
増分の値 | 実行条件 |
---|---|
正の数または 0 | カウンタ <= 最終値 |
負の数 | カウンタ >= 最終値 |
このループから強制的に脱出したい場合はExitステートメントの"Exit For"を実行するとNextの次の行に移ります。
注意事項
増分に"0"を指定すると無限ループです。
Forブロックをネスト(入れ子構造)する場合はカウンタに指定する変数を同じものにしないでください。挙動が複雑になり、予期しない無限ループになる可能性があります。
最終値と増分はForステートメントが実行した時点で値渡しされ、決定します。一連のステートメントを実行中に最終値に指定した変数が変化しても最終値に反映されません。
用例
'!TITLE "For~Nextの区間にある命令を繰り返し実行"
' 1から10までの加算
Sub Sample_ForNext
Dim aaa As Integer
Dim bbb As Integer
bbb = 0
' aaaが10より大きくなるまで加算処理を実行
For aaa = 0 To 10 Step 1
bbb = bbb + aaa
Next
' メッセージ出力ウィンドウに"55"を表示
PrintDbg bbb
End Sub
ID : 129