Do...Loop utasítás
Addig ismételgeti a Do és a Loop utasítások között elhelyezkedő utasításokat, ameddig a feltétel True (igaz) értékű, vagy True (igaz) értékűvé nem válik.
Szintaxis
Do [{While | Until} feltétel = True]utasításblokk
[Exit Do]utasításblokk
Loopvagy
Doutasításblokk
[Exit Do]utasításblokk
Loop [{While | Until} feltétel = True]Paraméterek és elemek
Feltétel: Egy összehasonlítás, numerikus vagy string (karakterlánc) kifejezés, amelynek kiértékelésekor az eredmény True (igaz) vagy False (hamis) lehet.
Utasításblokk: Utasítások, amelyeket addig szeretné ismételgetni, ameddig a feltétel True (igaz) értékű.
A Do...Loop utasítás addig hajtja végre a ciklust, amíg egy adott feltétel igaz, vagy igaz nem lesz. A ciklusból kilépés feltételét a Do vagy Loop utasítás után kell beríni. Az alábbi példák érvényes kombinációk:
Szintaxis
Do While feltétel = True...utasításblokk
LoopA Do While és a Loop utasítás közti utasításblokk addig ismétlődik, ameddig a feltétel igaz (True).
Do Until feltétel = True...utasításblokk
LoopA Do Until és a Loop utasítás közti utasításblokk addig ismétlődik, ameddig a feltétel nem teljesül (False).
Do...utasításblokk
Loop While feltétel = TrueA Do és a Loop utasítás közti utasításblokk addig ismétlődik, ameddig a feltétel teljesül.
Do...utasításblokk
Loop Until feltétel = TrueA Do és a Loop utasítás közti utasításblokk addig ismétlődik, ameddig a feltétel igaz.
Az Exit Do utasítás segítségével a hurok feltétel nélkül befejeződik. Ezt az utasítást a Do...Loop utasításban bárhol használhatja. Egy kilépési feltételt is megadhat az If...Then struktúra segítségével az alábbiak szerint:
Do...utasítások
If feltétel = True Then Exit Doutasítások
Loop...Példa
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