Do...Loop Statement

Repeats the statements between the Do and the Loop statement while the condition is True or until the condition becomes True.

Syntax

Do [{While | Until} condition = True]

statement block

[Exit Do]

statement block

Loop

or

Do

statement block

[Exit Do]

statement block

Loop [{While | Until} condition = True]

Parameters/Elements

Condition: A comparison, numeric or string expression, that evaluates either True or False.

Statement block: Statements that you want to repeat while or until the condition is True.

The Do...Loop statement executes a loop as long as, or until, a certain condition is True. The condition for exiting the loop must be entered following either the Do or the Loop statement. The following examples are valid combinations:

Syntax

Do While condition = True

...statement block

Loop

The statement block between the Do While and the Loop statements is repeated so long as the condition is true.

Do Until condition = True

...statement block

Loop

The statement block between the Do Until and the Loop statements is repeated if the condition so long as the condition is false.

Do

...statement block

Loop While condition = True

The statement block between the Do and the Loop statements repeats so long as the condition is true.

Do

...statement block

Loop Until condition = True

The statement block between the Do and the Loop statements repeats until the condition is true.

Use the Exit Do statement to unconditionally end the loop. You can add this statement anywhere in a Do...Loop statement. You can also define an exit condition using the If...Then structure as follows:

Do...

statements

If condition = True Then Exit Do

statements

Loop...

Example

Sub ExampleDoLoop

Dim sFile As String

Dim sPath As String

    sPath = "c:\"

    sFile = Dir$( sPath ,22)

    If sFile <> "" Then

        Do

            MsgBox sFile

            sFile = Dir$

        Loop Until sFile = ""

    End If

End Sub