Cell Error Values
Значение ошибки ячейки можно вставить в ячейку или проверить значение ячейки на наличие значения ошибки с помощью функции CVErr . Значения ошибки ячейки могут быть одной из следующих констант xlCVError .
Константа | Номер ошибки | Значение ошибки ячейки |
---|---|---|
xlErrDiv0 | 2007 | #ДЕЛ/0! |
xlErrNA | 2042 | #Н/Д |
xlErrName | 2029 | #ИМЯ? |
xlErrNull | 2000 | #NULL! |
xlErrNum | 2036 | #ЧИСЛО! |
xlErrRef | 2023 | #ССЫЛКА! |
xlErrValue | 2015 | #ЗНАЧ! |
Пример
В этом примере семь значений ошибок ячейки вставляются в ячейки A1:A7 на листе 1.
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
В этом примере отображается сообщение, если активная ячейка на Листе 1 содержит значение ошибки ячейки. Используйте этот пример в качестве платформы для обработчика ошибок типа "ячейка-ошибка-значение".
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
Поддержка и обратная связь
Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.