While...Wend statement

Executes a series of statements as long as a given condition is True.


While condition [ statements ] Wend

The While...Wend statement syntax has these parts:

Part Description
condition Required. Numeric expression or string expression that evaluates to True or False. If condition is Null, condition is treated as False.
statements Optional. One or more statements executed while condition is True.


If condition is True, all statements are executed until the Wend statement is encountered. Control then returns to the While statement and condition is again checked. If condition is still True, the process is repeated. If it is not True, execution resumes with the statement following the Wend statement.

While...Wend loops can be nested to any level. Each Wend matches the most recent While.


The Do...Loop statement provides a more structured and flexible way to perform looping.


This example uses the While...Wend statement to increment a counter variable. The statements in the loop are executed as long as the condition evaluates to True.

Dim Counter 
Counter = 0 ' Initialize variable. 
While Counter < 20 ' Test value of Counter. 
 Counter = Counter + 1 ' Increment Counter. 
Wend ' End While loop when Counter > 19. 
Debug.Print Counter ' Prints 20 in the Immediate window. 

See also

Support and feedback

Have questions or feedback about Office VBA or this documentation? Please see Office VBA support and feedback for guidance about the ways you can receive support and provide feedback.