我需要删除列N中包含0或正值的所有行(整行)。下面的代码正确执行此操作,但问题是第1行有列标题(所有文本)。我的当前宏删除了这一行。我需要这一行不包含在宏效果的范围内或以某种方式锁定。行数是动态的,因此我无法指定要运行的宏的固定范围。
Sub Step20()
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
Dim i As Long
For i = Range("N" & Rows.Count).End(xlUp).Row To 1 Step -1
If (Range("N" & i).Value >= 0) Then
Range("N" & i).EntireRow.Delete
End If
Next i
Application.Calculation = xlCalculationAutomatic
Application.ScreenUpdating = True
End Sub
谢谢!
答案 0 :(得分:1)
您要将代码设置为从最后一行运行到第一行,即第一行,即整个文档。如果改为直到第2行运行怎么办?您只需要确保标题位于第1行!
以下是我在代码中要更改的内容:
For i = Range("N" & Rows.Count).End(xlUp).Row To 2 Step -1
这样您就可以保留第一行并完成工作。