我是一個新手,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