【问题标题】:Resume next index in a for If a condition is true VBA如果条件为真VBA,则恢复下一个索引
【发布时间】:2017-01-12 22:38:48
【问题描述】:

如果条件被授予,我想恢复 for 中的下一个索引

我尝试使用的代码如下所示:

For i = 0 to 10
  If condition is true then
     Next i
  else
  'code
  end if
Next i

欢迎任何帮助

【问题讨论】:

    标签: vba if-statement for-loop


    【解决方案1】:

    只是:

    For i = 0 to 10
      If condition is False then
         'code
      end if
    Next i
    

    如果条件为真,那么您将自动跳到下一个i

    如果情况更复杂,由于 VBA 缺少 Continue 构造,您将需要使用 GoTo

    For i = 0 to 10
      'code
      If condition is true then
         'more code
         GoTo LoopBottom
      else
      'still more code
      end if
      'even more code
    LoopBottom:
    Next i
    

    【讨论】:

    • 我不敢相信我真的问了这个问题,我有点累了,所以可能是这样,但这是正确和明显的哈哈哈谢谢你 vm
    【解决方案2】:

    为什么不在那个 if 语句中使用Not

    For i = 0 to 10
        If Not condition is true Then
            'code
        End If
    Next i
    

    虽然如果您希望有更复杂的陈述,John Coleman 的答案会更好。他的回答也会更具可读性。

    【讨论】:

    • 感谢您的回答,它实际上适用于两个答案!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-10-24
    • 2016-04-10
    • 2018-12-06
    • 2011-08-21
    • 2020-06-25
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多