VBA和stackoverflow新手。
我想搜索工作表,如果有错误(#N / A等),我想清除它们。如果没有错误什么都不做。
我用过:
Cells.SpecialCells(xlCellTypeFormulas,xlErrors).Clear
当出现错误时工作正常,但如果没有错误,我最终会进入调试模式。
有什么建议吗?
谢谢!
答案 0 :(得分:0)
您需要添加
On Error Resume Next
到包含SpecialCells Clear()的VBA方法。
这是必需的,因为当无法满足SpecialCells
方法条件时,会发生错误!
答案 1 :(得分:0)
除了可以解决你的问题的Mitch回答之外,最好定义一个范围变量并测试它是否一无所有然后清除它。见下面的代码。
Sub sample()
On Error Resume Next
Dim rng As Range
Set rng = Cells.SpecialCells(xlCellTypeFormulas, xlErrors)
If Not rng Is Nothing Then
rng.Clear
End If
End Sub