2016-08-11 97 views
1

我有一個關於哪些我沒有找到網上的具體信息的快速問題。 我想執行一個Do...Loop Until循環,但我希望在最後插入多個條件。我想做:做...循環直到有多個條件

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

這可能嗎?

非常感謝你提前, 奧蘭多

+5

你不能?你嘗試過嗎?你有錯誤嗎? – BruceWayne

+0

*我沒有在網上找到具體的信息* ...呃,我敢肯定'做[語句]循環直到[**布爾表達式**]'被記錄*在某處* –

回答

2

下面的例子示出了延遲計算實現:

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

這種代碼允許以提高性能和加速執行代碼。它會逐個評估條件,直到只有第一個假結果,如果所有條件都爲真,則退出循環,而傳統的And操作員會評估所有條件,而不管結果如何。

+0

非常感謝,特別是爲了加快計算速度! :) – OrlandoT

3

有可能確實是因爲如果你使用「如果」語句,例如:

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

您可以使用And和/或Or

Do 
    'Your code 
Loop until condition1 And condition2 

And將一直持續所有條件都滿足。當滿足一個或多個條件時, Or將繼續。

您可以有任意數量的條件。

+0

感謝您添加此信息盧! – OrlandoT