Do...Loop Statement
Toistetaan Do- ja Loop-lauseiden välisiä lauseita niin kauan kuin ehto on tosi tai kunnes ehto tulee tosi-arvoksi.
Syntaksi
Do [{While | Until} ehto = True]lauselohko1
[Exit Do]lauselohko1
Looptai
Dolauselohko1
[Exit Do]lauselohko1
Loop [{While | Until} ehto = True]Parametrit/osatekijät
Ehto: vertailu-, numeerinen tai merkkijonolauseke, joka saa arvon True tai False.
Lauselohko: lauseet, jotka toistetaan niin kauan (while) tai kunnes (until) ehto on True.
Do...Loop-lausetta suoritetaan silmukassa niin kauan kuin tietty ehto on tosi, tai siihen saakka kun ehto tulee todeksi (True). Silmukasta poistumisehdon pitää seurata Do -lausetta ennen Loop -lausetta. Seuraavassa on esitetty kelvolliset vaihtoehdot:
Syntaksi
Do While ehto = True...lauselohko
LoopLauselohkoa, joka on Do While ja Loop-lauseiden välissä, toistetaan niin kauan kuin ehto on tosi (True).
Do Until ehto = True...lauselohko
LoopDo Until ja Loop-lauseiden välistä lauselohkoa toistetaan niin kauan kuin ehto säilyy epätotena (False).
Do...lauselohko
Loop While ehto = TrueDo- ja Loop-lauseiden välistä lauselohkoa toistetaan niin kauan kuin ehto säilyy totena (True).
Do...lauselohko
Loop Until ehto = TrueDo- ja Loop-lauseiden välistä lauselohkoa toistetaan kunnes ehto on tosi (True).
Exit Do-lausetta käytetään ehdottomaan silmukasta poistumiseen. Lauseen voi lisätä mihin vain lauseiden Do...Loop välille. Poistumisehdon voi määrittää myös käyttämällä If...Then -rakennetta seuraavaan tapaan:
Do...lauseet
If ehto = True Then Exit Dolauseet
Loop...Esimerkki
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