Module
Contents
Index 🔎︎

# Do...Loop 语句

当条件为 True 或 False 时，重复执行 Do 与 Loop 语句之间的语句。

## 语法：

    Do [{While | Until} condition = True]

语句块

    [Exit Do]

语句块

    循环

或

    Do

语句块

    [Exit Do]

语句块

    Loop [{While | Until} condition = True]

## 参数/元素：

Condition：比较、数字或字符串表达式，其值为 True 或 False。

语句块：条件为 True 时要重复执行的语句。

只要条件为 True，Do...Loop 语句就执行循环。用于退出循环的条件必须放在 Do 或 Loop 语句之后。以下示例是一些有效的语句繀合：

## 语法：

    Do While condition = True

...语句块

    循环

只要条件为 True，就重复执行 Do While 与 Loop 语句之间的语句块。

    Do Until condition = True

...语句块

    循环

只要条件为 False，就重复执行 Do Until 与 Loop 语句之间的语句块。

    Do

...语句块

    Loop While condition = True

只要条件为 True，就重复执行 Do 与 Loop 语句之间的语句块。

    Do

...语句块

    Loop Until condition = True

只要条件为 True，就重复执行 Do 与 Loop 语句之间的语句块。

Exit Do 语句可用于无条件地结束循环。您可以在 Do...Loop 语句中的任意位置加入此语句。此外，也可以使用 If...Then 结构定义一个退出条件：

    Do...

语句

    If condition = 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