我试图确定特定单元格是否包含错误值。我一直在尝试使用IsError函数但不确定要使用什么语法。
如果单元格D4包含#N / A,那么我的当前代码为:
Dim curCol As String
Dim tmp As Boolean
curCol = "$D$"
tmp = WorksheetFunction.IsError(TListSheet.Cells(curCol & "4").Values)
上面的最后一行结束函数执行,导致调用它的单元格中的#VALUE。 TListSheet是我使用的工作表的代号名称,而另一个函数将curCol作为$ D $返回,所以我不能将该值硬编码到IsError函数中
答案 0 :(得分:1)
这是一个简单的方法:
Sub MakeErrorTestError()
Range("B9").Formula = "=VLOOKUP(0,0,0)"
MsgBox Range("B9").Text
End Sub
修改#1:强>
这是一种测试特定单元格中的任何错误和错误的方法:
Sub MakeErrorTestError()
Dim rError As Range
Range("B9").Formula = "=VLOOKUP(0,0,0)"
On Error Resume Next
Set rError = ActiveSheet.UsedRange.Cells.SpecialCells(xlCellTypeFormulas, xlErrors)
If rError Is Nothing Then MsgBox "No errors"
If Intersect(Range("B9"), rError) Is Nothing Then
MsgBox "No error in B9"
Else
MsgBox "error in B9"
End If
End Sub