Do...Loop 語句
當條件為 True 時或條件變為 True 之前重複執行某語句塊。
Do [{While | Until} condition]
[statements]
[Exit Do]
[statements]
Loop
也可以使用下面的文法:
Do
[statements]
[Exit Do]
[statements]
Loop [{While | Until} condition]
參數
condition
數值或字串運算式,其值為 True 或 False。如果 condition 為 Null,則 condition 被當作 False。
statements
當 condition 為 True 時被重複執行的一條或多條命令。
說明
Exit Do 僅可以用在 Do...Loop 控制語句中,提供另一種退出 Do...Loop 的方法。可以在 Do...Loop 語句中的任何位置放置任意個 Exit Do。Exit Do 通常與條件判斷語句(如 If...Then )一起使用,將控制傳遞給緊隨在 Loop 語句後面的語句。
當用於嵌套 Do...Loop 中的時候,Exit Do 將控制傳遞給其所在迴圈的上一層嵌套迴圈。
下面例子舉例說明如何使用 Do...Loop 語句:
Do Until DefResp = vbNo MyNum = Int (6 * Rnd + 1) ' 產生 1 到 6 之間的隨機數。 DefResp = MsgBox (MyNum & " 想要另一個數嗎?", vbYesNo)LoopDim Check, CounterCheck = True: Counter = 0 ' 初始設定變數。Do ' 外層迴圈。 Do While Counter < 20 ' 內層迴圈。 Counter = Counter + 1 ' 增加計數器。 If Counter = 10 Then ' 如果條件為 True... Check = False ' 將標誌值設定為 False。 Exit Do ' 終止內層迴圈。 End If LoopLoop Until Check = False ' 立即終止外層迴圈。