\<bookmark_value\>Do...Loop statement\</bookmark_value\>\<bookmark_value\>While; Do loop\</bookmark_value\>\<bookmark_value\>Until\</bookmark_value\>\<bookmark_value\>loops\</bookmark_value\>

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

\<emph\>Condition:\</emph\> A comparison, numeric or string expression, that evaluates either True or False.

\<emph\>Statement block:\</emph\> Statements that you want to repeat while or until the condition is True.

The \<emph\>Do...Loop\</emph\> 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 \<emph\>Do\</emph\> or the \<emph\>Loop\</emph\> 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 \<emph\>Exit Do\</emph\> statement to unconditionally end the loop. You can add this statement anywhere in a \<emph\>Do\</emph\>...\<emph\>Loop\</emph\> statement. You can also define an exit condition using the \<emph\>If...Then\</emph\> 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

Please support us!