Do...Loop Statement

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