句在它相对应的 For 语句之前出现,则会产生错误。
二、While...Wend 语句——只要指定的条件为 True,则会重复执行一系列的语句。 语法:
While condition
[statements]
Wend
描述
condition 必要参数。数值表达式或字符串表达式,其计算结果为 True 或 False。如果 condition 为 Null,则 condition 会视为 False。
statements 可选参数。一条或多条语句,当条件(condition)为 True 时执行。
执行过程:
如果 condition 为 True,则所有的 statements 都会执行,一直执行到 Wend 语句。然后再回到 While 语句,并再一次检查 condition,如果 condition 还是为 True,则重复执行。如果不为 True,则程序会从 Wend 语句之后的语句继续执行。
While...Wend 循环也可以是多层的嵌套结构。每个 Wend 匹配最近的 While 语句。
提示:Do...Loop 语句提供了一种较While...Wend结构化与适应性更强的方法来执行循环。
三、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。
说明:
在Do…Loop 中可以在任何位置放置任意个数的 Exit Do 语句,随时跳出Do….loop 循环。Exit Do 通常用于条件判断之后,例如If….then,在这种情况下,Exit Do 语句将控制权转移到紧接在 Loop 命令之后的语句。
如果 Exit Do 使用在嵌套的Do…Loop 语句中,则 Exit Do 会将控制权转移到 Exit Do 所在位置的外层循环。
Do循环语句可总结为下面四种形式
另:在 Do 和 Loop 后面不使用其他任何关键字,必须在循环体内加入判断语句退出循环 I = 0: S = 0
Do
I = I + 1
If I > 100 Then Exit Do
S = S + I
Loop
MsgBox "Do...Loop:1+2+3+...+100 = " & S
四、利用Goto 语句控制循环
I = 0: S = 0
Mark1:
I = I + 1
S = S + I
If I < 100 Then GoTo Mark1
MsgBox "GoTo 语句:1+2+3+...+100 = " & S