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)
Loop
Dim Check, Counter
Check = True: Counter = 0
'
初始化变量。Do
'
外层循环。 Do While Counter 20
'
内层循环。 Counter = Counter + 1
'
增加计数器。 If Counter = 10 Then
'
如果条件为 True...
Check = False
'
将标志值设置为 False
。 Exit Do
'
终止内层循环。 End If
Loop
Loop Until Check = False
'
立即终止外层循环。