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
Loopor
Dostatement 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
LoopThe 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
LoopThe 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 = TrueThe statement block between the Do and the Loop statements repeats so long as the condition is true.
Do...statement block
Loop Until condition = TrueThe 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 Dostatements
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