在VBA DO中测试多个标准while while

时间:2017-08-30 15:15:43

标签: vba loops criteria

我正在尝试编辑一些当前循环的VBA代码,直到满足某个测试。我想做的是循环,直到满足两个条件。我无法做到这一点。这是原始代码,可以使用。

    Loop
    For j = 1 To 29
    Increment = Worksheets("Price & Energy Curve").Cells(8 + Start + j, 3).Value
    l = Int((Worksheets("Capacity").Cells(57 + j, 12).Value) * (-1) / Increment)
    k = WorksheetFunction.Max((l + 1) * Increment, 0)
    Worksheets("Capacity").Activate
    ActiveSheet.Cells(56 + j, 17).Value = k
    test = ActiveSheet.Cells(57 + j, 13).Value
    Do While test <> True
    k = k + Increment
    ActiveSheet.Cells(56 + j, 17).Value = k
    test = ActiveSheet.Cells(57 + j, 13).Value
    Loop
    Next j

我想添加

的附加测试
   test = ActiveSheet.Cells(57 + j, 37).Value

这样当

   test = ActiveSheet.Cells(57 + j, 13).Value

  test = ActiveSheet.Cells(57 + j, 37).Value

是真的,循环退出。

1 个答案:

答案 0 :(得分:0)

检查此循环

Do While test1 <> True Or test2 <> True
k = k + Increment
ActiveSheet.Cells(56 + j, 17).Value = k
test1 = ActiveSheet.Cells(57 + j, 13).Value
test2 = ActiveSheet.Cells(57 + j, 37).Value
Loop