我是VBA for excel的新手,我遇到了一个小问题。如果D列中的值大于E列中的值,则必须删除整行。
数据列表很长,我需要继续操作,直到C列中的数据结束。任何帮助都会很棒!
答案 0 :(得分:2)
删除行时,从底部开始处理,或者由于与新删除的行关联的重新编号,您可能会跳过行。
Sub del_D_greater_than_E()
Dim rw As Long
With Worksheets("Sheet5") '<~~ set this properly!
For rw = .Cells(Rows.Count, "C").End(xlUp).Row To 2 Step -1
If .Cells(rw, "D").Value2 > .Cells(rw, "E").Value2 Then
.Rows(rw).EntireRow.Delete
End If
Next rw
End With
End Sub
这应该足以让你入门。您可能希望在操作期间关闭屏幕更新和计算。