Modul
Tartalom
Index 🔎︎

# 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