Excel VBA:单元格错误值

可将单元格错误值插入单元格,或者用 CVErr函数测试单元格的值是否为某个错误值。单元格错误值可为以下 XlCVError 常量之一。

常量 错误号 单元格错误值
xlErrDiv0 2007 #DIV/0!
xlErrNA 2042 #N/A
xlErrName 2029 #NAME?
xlErrNull 2000 #NULL!
xlErrNum 2036 #NUM!
xlErrRef 2023 #REF!
xlErrValue 2015 #VALUE!

Excel VBA教程:单元格错误值·示例

本示例将七个单元格错误值分别插入到工作表 Sheet1 的 A1:A7 单元格区域中。


myArray = Array(xlErrDiv0, xlErrNA, xlErrName, xlErrNull, _
    xlErrNum, xlErrRef, xlErrValue)
For i = 1 To 7
    Worksheets("Sheet1").Cells(i, 1).Value = CVErr(myArray(i - 1))
Next i

本示例检查工作表 Sheet1 的活动单元格是否包含单元格错误值,如果有,则显示一则消息。本示例可作为针对单元格错误值的错误处理程序的模型结构。


Worksheets("Sheet1").Activate
If IsError(ActiveCell.Value) Then
    errval = ActiveCell.Value
    Select Case errval
        Case CVErr(xlErrDiv0)
            MsgBox "#DIV/0! error"
        Case CVErr(xlErrNA)
            MsgBox "#N/A error"
        Case CVErr(xlErrName)
            MsgBox "#NAME? error"
        Case CVErr(xlErrNull)
            MsgBox "#NULL! error"
        Case CVErr(xlErrNum)
            MsgBox "#NUM! error"
        Case CVErr(xlErrRef)
            MsgBox "#REF! error"
        Case CVErr(xlErrValue)
            MsgBox "#VALUE! error"
        Case Else
            MsgBox "This should never happen!!"
    End Select
End If

猜你喜欢

转载自blog.csdn.net/yanlovehan/article/details/54098207