2
我的任務是如果K列中有零值,我必須刪除整行。首先我想到的是循環但我有4000行,1000行可能有K值爲零。這些VBA代碼的錯誤是什麼?
Sub DeleteRowWithContents()
Last = Cells(Rows.Count, "D").End(xlUp).Row
For i = Last To 1 Step -1
If (Cells(i, "K").Value) = 0 Then
Cells(i, "A").EntireRow.Delete
End If
Next i
End Sub
我相信人們都說它的時間正在循環。這就是爲什麼我認爲更好的去接下來的方法,人們也告訴我'查找'比循環快得多。因此,我已用下面的代碼,我發現,當我使用Google
3210但是我發現上面的代碼,它也被刪除行,如果k個列中有10或20個值。我的意思是如果數字包含零,那麼它的刪除
的例子。
204 or 200 or 205 or 301 or 10 \ Its deleting all these rows
這些代碼有什麼問題?這些代碼比我想要使用的循環太快,但是我發現它有問題。
請解釋錯誤原因。如果在K列中除了循環以外還有零值,或者(也可能循環應該太快),那麼對於刪除行更快的其他方法有幫助?這將不勝感激。由於
不就是是不是我想是因爲它即使不工作的bug但是,謝謝布魯諾:) – niko
其他方式是使用過濾方法和刪除可見的單元格。 –
你認爲哪個更快的過濾器或Find?我相信過濾器是對的? – niko