我正在尝试确定特定单元格是否包含错误值。我一直在尝试使用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函数
下面是一个简单的方法:
- 创建错误
- 测试错误
.
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