AQ列为0的删除整行
For i = 1 To 2000
If Range("AQ" & i).Value = "0" Then
Rows(i & ":" & i).Delete Shift:=xlUp
i = i - 1
End If
Next
End Sub
现在要追加一个条件:如果单元格无法计算(出现#REF!)也要删除整行,但如果等于空的值(就是单元格里面什么都没有的)要保留行的。
本人是菜鸟,帮忙改一下.
谢谢
VBA删除行
通常是从下往上查找目标值进行删除
这样才会不会误删
Sub test()For i = 2000 To 1 step -1
If Range("AQ" & i).Value = "0" or Range("AQ" & i).text = "#REF!" Then
Rows(i & ":" & i).Delete Shift:=xlUp
End If
Next
End Sub
温馨提示:答案为网友推荐,仅供参考
第1个回答 推荐于2018-03-07
增加一个或条件,取文本值,即可
For i = 1 To 2000
If Range("AQ" & i).Value = "0" or Range("AQ" & i).text = "#REF!" Then
Rows(i & ":" & i).Delete Shift:=xlUp
i = i - 1
End If
Next
End Sub本回答被提问者和网友采纳
For i = 1 To 2000
If Range("AQ" & i).Value = "0" or Range("AQ" & i).text = "#REF!" Then
Rows(i & ":" & i).Delete Shift:=xlUp
i = i - 1
End If
Next
End Sub本回答被提问者和网友采纳
第2个回答 2012-06-04
If Range("AQ" & i).Value = "0" && Range("AQ" & i).Value = "#REF" Then追问
缺少表达式
第3个回答 2012-06-10
你这个问题应该想办法不要出现#REF!才是正道