Microsoft® Visual Basic® Scripting Edition
For...Next ステートメント
 ランゲージ リファレンス  

関連項目


指定した回数だけ、一連のステートメントを繰り返すフロー制御ステートメントです。

構文
For counter = start To end [Step step]
    [statements]
    [Exit For]
    [statements]
Next
For...Next ステートメントの構文は、次の指定項目から構成されます。

指定項目 内容
counter ループ カウンタに使う数値変数を指定します。この変数には、配列やユーザー定義型の要素は指定できません。
start 引数 counter の初期値を指定します。
end 引数 counter の最終値を指定します。
step ループを繰り返すごとに引数 counter に加算される値を指定します。引数 step を省略すると、ループを繰り返すごとに引数 counter に 1 が加算されます。
statements ループ内で実行される一連のステートメントを指定します。ForNext の間にこれらのステートメントを記述します。ここに記述したステートメントは、For...Next で指定した回数だけ実行されます。

解説
引数 step には正の数または負の数を指定できます。引数 step で指定した値によりループの実行は次のように制御されます。

実行条件
正の数または 0 counter <= end
負の数 counter >= end

プログラムの実行がループに移り、ループ内の一連のステートメントがすべて実行されると、引数 step の値が引数 counter に加算されます。この時点で終了条件が満たされていない場合は、ループ内のステートメントが再び実行されます。終了条件が満たされている場合は、ループから抜け出して Next ステートメントの次のステートメントに制御が移ります。


ヒント ループ内で引数 counter の値を変えると、プログラムの処理内容の理解やデバッグが困難になりますので注意してください。

Exit For ステートメントは、制御構造 For Each...Next または For...Next ループ内でのみ使用できます。Exit For ステートメントを使用すると、指定した回数以外の条件で For...Next ループを終了させることができます。Exit For ステートメントは、For Each...Next ループまたは For...Next ループ内の任意の位置で何回でも指定できます。Exit For ステートメントは、条件の評価 (たとえば If...Then ステートメントなど) と共に使われることが多く、Next の直後のステートメントに制御を渡します。

For...Next ループはネスト (入れ子) 構造にすることができます。つまり、For...Next ループの内部に別の For...Next ループを入れることができます。ループをネスト (入れ子) させる場合は、それぞれの引数 counter に別の変数名を指定してください。正しいステートメントの例を次に示します。


For I = 1 To 10
    For J = 1 To 10
        For K = 1 To 10
        . . .
        Next
    Next
Next

© 1997 Microsoft Corporation.