120

我正在使用 VBA 的 While...Wend 循环。

Dim count as Integer

While True
    count=count+1

    If count = 10 Then
        ''What should be the statement to break the While...Wend loop? 
        ''Break or Exit While not working
    EndIf
Wend

我不想使用像 `While count<=10...Wend 这样的条件

4

3 回答 3

208

A While/Wend循环只能通过退出GOTO外部块(Exit sub/function或另一个可退出循环)提前退出

改为Do循环:

Do While True
    count = count + 1

    If count = 10 Then
        Exit Do
    End If
Loop

或者循环一定次数:

for count = 1 to 10
   msgbox count
next

Exit For可以在上面使用提前退出)

于 2012-08-30T15:58:22.020 回答
0

另一种选择是将标志变量设置为 a Boolean,然后根据您的标准更改该值。

Dim count as Integer 
Dim flag as Boolean

flag = True

While flag
    count = count + 1 

    If count = 10 Then
        'Set the flag to false         '
        flag = false
    End If 
Wend
于 2019-12-03T08:51:06.917 回答
0

最好的方法是在你的语句中使用一个And子句While

Dim count as Integer
count =0
While True And count <= 10
    count=count+1
    Debug.Print(count)
Wend
于 2020-07-18T20:16:00.510 回答