Excel 打破For循环

Excel 打破For循环,excel,vba,Excel,Vba,如果满足条件,如何退出循环中的For迭代,然后转到下一个循环。这个表有几千行,这样的循环中断会加快代码的速度。这不是仅从整个循环退出跳过一次迭代 For i = 1 To LastRow2 For j = 1 To LastRow3 If ark2.Cells(j, "F") = ark3.Cells(i, "J") Then GoTo NextIteration Else LastRow2 = ark2.C

如果满足条件,如何退出循环中的
For
迭代,然后转到下一个循环。这个表有几千行,这样的循环中断会加快代码的速度。这不是仅从整个循环退出跳过一次迭代

For i = 1 To LastRow2
    For j = 1 To LastRow3
        If ark2.Cells(j, "F") = ark3.Cells(i, "J") Then
            GoTo NextIteration
        Else
            LastRow2 = ark2.Cells(Rows.Count, 1).End(xlUp).Row
            ark2.Rows(LastRow2 + 1) = ark3.Rows(i)
        End If

    Next j
Next i

你到底想做什么?两个循环闻起来有点可疑。“退出”将退出最里面的循环。。。如果希望在内部循环中退出整个循环,则可以在循环外部设置一个布尔值,并仅在布尔值为true时继续(换句话说,如果布尔值已关闭,则在外部循环中退出),这是否回答了您的问题?使用完全不同的方法。。使用数组;)
Exit For
怎么不是正确的答案?是否要跳过任何迭代
j
,转到下一个
i
?然后退出。。。我能从这个问题得到的唯一其他解释是,你想跳到下一个
j
?如果是这样的话,那么只要做
如果不是ark2.Cells(j,“F”)=ark3.Cells(i,“j”),那么
并按照@MG92的建议将代码放入其中。然后,只有在没有匹配项的情况下,才会执行更昂贵的代码。如果有,它将迭代到下一个
j