[excel] While… Wend 루프에서 벗어나기

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’와 같은 조건을 사용하고 싶지 않습니다.



답변

While/의 Wend루프 만이 조기에 종료 할 수 GOTO또는 외측 블록 (로 끝낼 Exit sub/ function또는 다른 exitable 루프)

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위에서 사용하여 조기 종료 할 수 있음)


답변

또 다른 옵션은 플래그 변수를 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


답변

가장 좋은 방법은 진술에 And절 을 사용하는 것입니다 While.

Dim count as Integer
count =0
While True And count <= 10
    count=count+1
    Debug.Print(count)
Wend


답변