我是一个新手,VBA,并试图使与if语句工作的两个循环 - 按照这样的代码:脚本一遍又一遍地循环 - 为什么?
Sub Filter()
For Count = Worksheets("STR").Range("A1").End(xlDown).Row To 1 Step -1
For Counter = 5 To Worksheets("Filter").Range("A5").End(xlDown).Row
With Worksheets("STR").Range("C" & Count)
If .Value Like Worksheets("Filter").Range("C" & Counter).Value _
Or .Value Like Worksheets("Filter").Range("D" & Counter).Value _
Or .Value Like Worksheets("Filter").Range("E" & Counter).Value _
Or .Value Like Worksheets("Filter").Range("A" & Counter).Value Then
Worksheets("STR").Range("D" & Count) = "X"
'Worksheets("STR").Row("A" & Count).EntireRow.Delete
Next Counter
End If
End With
Next Count
End Sub
在某个阶段,我想它循环一遍又一遍,直到它崩溃。调试器告诉我这是“End If”行,但我没看到有什么问题。有没有办法让这更容易?
在此先感谢!
由于提供的代码不运行 - 你会得到一个Next,却没有对错误的原因是'下一个Counter'线应该在'End If'和'End With'之后,而不是在他们之前 – barrowc 2012-08-13 21:19:24
Hey Barrowc,thx那个提示 - 但它仍然不起作用(或者真的很长)。有什么办法可以让这个表现更好吗? – oliver13 2012-08-13 21:31:36