Оператор 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. Можете да го поставите където и да е в оператор Do…Loop. Освен това можете да дефинирате условие за изход със структура 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