For...Next ステートメント

For...Next ステートメントは、指定された下限値および上限値に従って反復します。

For ステートメントは、次を指定します。

For ステートメントは次のステートメントに一致することによって閉じる必要があります。

次の構文は、For...Next ステートメントに適用されます。

For <identifier> = <LowerBoundExpression > To <UpperBoundExpression> [Step expression]
   [statements]
Next [identifier]

識別子はループ コントロール変数を指定し、For ステートメントの前に整数または数値のいずれかのタイプとして宣言されている必要があります。ネストされた For...Next ステートメントは、それぞれ独自のループ コントロール変数を使用する必要があります。

ループの最初の段階では、下限式は、ループ コントロール値に割り当てられます。任意のステップ値は、反復ごとにループ コントロール変数が変化する量を設定します。ステップ値が提供されない場合、既定値 1 が使用されます。Next ステートメントでは、ループ コントロール値の値はステップ値の量で増加または減少します。

上限、下限およびステップ式は、ループの開始時に一度計算されます。

各反復の開始時に、(ステップ値が正か負かに応じて)ループ コントロール変数が上限式より大きいか小さいかを確認するために比較されます。コントロール変数が上限を超えるとループが終了します。それ以外の場合はステートメントのブロックが実行されます。

次の例では、ステップの値に 2 が指定された For...Next ループを示します。

Rule total As Integer
   Dim counter As Integer = 0
  
   For counter = 0 To 10 Step 2
      total = total + counter
      printValue("Total = " + stringValue(total) + _
         " Counter = " + stringValue(counter))
   Next
End Rule
Output:
"Total = 0 Counter = 0"
"Total = 2 Counter = 2"
"Total = 6 Counter = 4"
"Total = 12 Counter = 6"
"Total = 20 Counter = 8"
"Total = 30 Counter = 10"

ループの本体に Exit For ステートメントを使用することで For...Next ループを終了することができます。

注: 詳細については、「Exit ステートメント」を参照してください。