For…Next 陳述式

以指定的次數重複一組陳述式。

語法

For counter=start To end [Step step]
    [statements]
    [Exit For]
    [statements]
Next

引數:

  • Counter:作為迴圈計數器的數值變數。變數不得為陣列元素或使用者定義類型的元素。

  • Start:計數器的初始值。

  • End:計數器的最終值。

  • Step:每次完成迴圈時計數器變更的數量。如果未指定,則 Step 會預設為 1。

  • Statements:在 For 與 Next 之間以指定次數執行一或多個陳述式。

備註

Step 引數可以是正數或負數。Step 引數的值決定迴圈處理,如下所示:

Table 11-33 迴圈執行

迴圈執行條件
正數或 0 counter <= end
負數 counter >= end

迴圈開始且迴圈中的所有陳述式都執行之後,就會將增量加到計數器。此時,不是迴圈中的陳述式再次執行 (根據一開始導致迴圈執行的相同測試),就是迴圈結束,然後執行繼續進行 Next 陳述式之後的陳述式。

Note:

在迴圈內部時變更計數器的值,會更難以讀取程式碼及進行偵錯。

Exit For 只能在 For Each...NextFor...Next 控制項結構中使用,以提供另一種結束的方式。可以在迴圈中的任何位置放置任何數目的 Exit For 陳述式。Exit For 通常與某些條件 (例如 If...Then) 的評估搭配使用,並將控制項傳輸至緊接 Next 之後的陳述式。

您可以在另一個 For...Next 迴圈中放置一個 For...Next 迴圈,以巢狀方式執行此種迴圈。為每個迴圈指定唯一的變數名稱作為其計數器。下列是正確的建構:

範例 1:

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

範例 2:正增量

Dim i
For i = 1 To 3 Step 2
    '"Countdown: " & i
Next
'Output:
'Countdown: 1
'Countdown: 3

範例 3:負增量

Dim i
For i = 3 To 1 Step -2
    '"Countdown: " & i
Next
'Output:
'Countdown: 3
'Countdown: 1