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

Loop

vagy

Do

utasí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

Loop

A 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

Loop

A 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 = True

A 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 = True

A 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 Do

utasí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