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

Loop

tai

Do

lauselohko1

[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

Loop

Lauselohkoa, joka on Do While ja Loop-lauseiden vÀlissÀ, toistetaan niin kauan kuin ehto on tosi (True).

Do Until ehto = True

...lauselohko

Loop

Do Until ja Loop-lauseiden vÀlistÀ lauselohkoa toistetaan niin kauan kuin ehto sÀilyy epÀtotena (False).

Do

...lauselohko

Loop While ehto = True

Do- ja Loop-lauseiden vÀlistÀ lauselohkoa toistetaan niin kauan kuin ehto sÀilyy totena (True).

Do

...lauselohko

Loop Until ehto = True

Do- 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 Do

lauseet

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