Оператор Do...Loop

Повтаря операторите между Do и Loop, докато условието има стойност True или до момента, когато стойността му стане True.

Синтаксис

Do [{While | Until} условие = True]

операторен блок

[Exit Do]

операторен блок

Loop

или

Do

операторен блок

[Exit Do]

операторен блок

Loop [{While | Until} условие = True]

Параметри/елементи

Условие: сравнение, числов или низов израз, чиято стойност е True или False.

Операторен блок: оператори, които искате да се повтарят докато стойността на условието е True или докато стане True.

Операторът Do…Loop изпълнява цикъл, който трае докато определено условие продължава да бъде удовлетворено (или до момента, когато бъде удовлетворено). Условието за изход от цикъла трябва да бъде въведено след оператора Do или Loop. Следните примери са валидни комбинации:

Синтаксис

Do While условие = True

…операторен блок

Loop

Операторите между Do While и Loop се повтарят, докато условието има стойност True.

Do Until условие = True

…операторен блок

Loop

Операторите между Do Until и Loop се повтарят, докато условието има стойност False.

Do

…операторен блок

Loop While условие = True

Операторите между Do и Loop се повтарят, докато условието има стойност True.

Do

…операторен блок

Loop Until условие = True

Операторите между Do и Loop се повтарят, докато условието има стойност False.

За да завършите цикъла безусловно, използвайте оператора Exit Do. Можете да го поставите където и да е в оператор DoLoop. Освен това можете да дефинирате условие за изход със структура If…Then както следва:

Do...

оператори

If условие = True Then Exit Do

оператори

Loop…

Пример

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