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 Loop
Loop Until Check = False' 立即终止外层循环。