做...循环直到多个条件

时间:2016-08-11 15:33:19

标签: vba excel-vba loops conditional-statements excel

我有一个简短的问题,我没有在网上找到具体的信息。 我想执行Do...Loop Until循环,但我想在最后插入多个条件。我想这样做:

Do
    ' ...my code...
Loop Until [Condition 1] And [Condition 2] And....And [Condition n]`

这可能吗?

非常感谢您提前, 奥兰多

3 个答案:

答案 0 :(得分:5)

确实可能就像使用“if”语句一样,例如:

Do Until rngCell.Value="" Or rngCell.Value="abc"
   DatePresent = (rngCell.Value = "RESP") Or (rngCell.Value ="Respiratory")
   Set rngCell = rngCell.Offset(1)
Loop

答案 1 :(得分:4)

您可以使用And和/或Or

Do
  'Your code
Loop until condition1 And condition2

And将一直持续所有条件。 当满足一个或多个条件时,Or将继续。

您可以有多种条件。

答案 2 :(得分:4)

以下示例显示了延迟评估实现:

Do
    ' some operations
    Select Case False
        Case Condition1
        Case Condition2
        Case Condition3
        Case ConditionN
        Case Else Exit Do
    End Select
Loop

此类代码可以提高性能并加快代码执行速度。它只是逐个评估条件,直到第一个错误结果为止,如果所有条件都为真,则它退出循环,而传统的And运算符评估所有条件,无论结果如何。