可以使用 Do...Loop 语句去运行语句的块,而它所用掉的时间是不确定的。当条件为 True 或直到条件变成 True 时,此语句会一直重复。 直到条件为 True 时重复语句当使用 While 关键字去检查 Do...Loop 语句中的条件时,可以有两种方法。可以在进入循环之前检查条件式,也可以在循环至少运行一次之后才检查条件式。 在下面的 Sub ChkFirstWhile()
counter = 0
myNum = 20
Do While myNum > 10
myNum = myNum - 1
counter = counter 1
Loop
MsgBox 'The loop made ' & counter & ' repetitions.'
End Sub
Sub ChkLastWhile()
counter = 0
myNum = 9
Do
myNum = myNum - 1
counter = counter 1
Loop While myNum > 10
MsgBox 'The loop made ' & counter & ' repetitions.'
End Sub
直到条件变成 True 才重复语句当使用 Until 关键字去检查 Do...Loop 语句中的条件时,可以使用两种方法。可以在进入循环之前检查条件(如同 Sub ChkFirstUntil()
counter = 0
myNum = 20
Do Until myNum = 10
myNum = myNum - 1
counter = counter 1
Loop
MsgBox 'The loop made ' & counter & ' repetitions.'
End Sub
Sub ChkLastUntil()
counter = 0
myNum = 1
Do
myNum = myNum 1
counter = counter 1
Loop Until myNum = 10
MsgBox 'The loop made ' & counter & ' repetitions.'
End Sub
从循环内退出 Do...Loop 语句可以使用 Exit Do 语句来退出 Do...Loop 语句。例如,为了退出无穷循环,可以在 If...Then...Else 语句或是 Select Case 语句的 True 语句块中使用 Exit Do 语句。如果条件为 False,则循环会象通常那样运行。 在下面的示例中, Sub ExitExample()
counter = 0
myNum = 9
Do Until myNum = 10
myNum = myNum - 1
counter = counter 1
If myNum < 10 Then Exit Do
Loop
MsgBox 'The loop made ' & counter & ' repetitions.'
End Sub
注意 可以按 ESC 或 CTRL BREAK 键来终止无穷循环。 |
|