Функция Excel VBA ISERROR
VBA IsError самото име на функцията обобщава функционалността. Тази функция ще идентифицира дали стойността, която сме предоставили, е грешка или не. Ако предоставената стойност или референтната стойност на диапазона е стойност на грешка, тогава ще получим резултата като „TRUE“, ако стойността не е грешка, тогава ще получим резултата като „FALSE“.
Синтаксис

Изразът не е нищо друго освен стойността, която тестваме, или референтната стойност на клетката или изразът на формула. И както можете да видите, резултатът ще бъде „Boolean“.
Примери
Пример # 1
Ще видим прост пример, за да разберем дали стойността е грешка или не. Например имаме по-ниска стойност в клетка A1.

Ще проверим дали тази стойност е грешка или не.
- Стартирайте кода на макроса.
Код:
Sub IsError_Example1 () Край Sub

- Декларирайте променлива за съхраняване на стойността на клетка A1.
Код:
Sub IsError_Example1 () Dim ExpValue As Variant End Sub

- Сега задайте стойността на клетка A1 на тази променлива в VBA.
Код:
Sub IsError_Example1 () Dim ExpValue As Variant ExpValue = Range ("A1"). Стойност Край Sub

- Сега проверете дали тази променлива стойност е грешка или не.
Код:
Sub IsError_Example1 () Dim ExpValue As Variant ExpValue = Range ("A1"). Value IsError (ExpValue) End Sub

- Затворете този резултат в поле за съобщение във VBA.
Код:
Sub IsError_Example1 () Dim ExpValue As Variant ExpValue = Range ("A1"). Стойност MsgBox IsError (ExpValue) End Sub

Добре, нека пуснем кода и да видим резултата от функцията ISERROR.

Резултатът е TRUE, защото стойността в клетка A1 е # DIV / 0! което е грешката при разделянето.
Сега ще променим стойността на клетка А1 на „Здравей“.

Сега стартирайте кода и вижте резултата.

Така че резултатът е FALSE сега, защото стойността в клетка A1 не е стойността на грешката.
И така, първо, трябва да разберем кои са типовете грешки и защо се появяват в работния лист на Excel. По-долу са подробни стойности за грешки и обяснения.
- # DIV / 0: Тази грешка възниква главно защото се опитваме да разделим числото на нула. Тази грешка се нарича „Деление по нула“.
- # N / A: Когато се опитате да извлечете данните от различни таблици и ако не е намерена стойност, ще получим тази грешка и тази грешка се нарича „Не е налична“.
- #NAME ?: Ако Excel не може да разпознае формулата или името, тогава ще получим тази грешка.
- #NULL !: Когато посочите интервал между референциите на клетката вместо запетая.
- #NUM ! : Числовата стойност, предоставена на данните, не е валидна.
- #VALUE !: Когато се позовавате на стойностите на клетката за математически изчисления и ако числовият формат не е правилен, ще получим тази грешка.
- #REF!: Ако клетката е формула, тя има препратки към клетки и ако тази препратена клетка бъде изтрита, тогава ще получим тази грешка в препратката.
Пример # 2
Сега вижте по-долу набора от данни.

Трябва да идентифицираме какви са стойностите на грешките от този списък и да съхраним резултата, ИСТИНЕН или НЕВЯРЕН, в следващата колона.
Тъй като трябва да тестваме повече от една клетка, трябва да включим това в цикли; кодът по-долу ще идентифицира стойностите на грешката.
Код:
Sub IsError_Example2 () Dim k As Integer For k = 2 To 12 Cells (k, 4) .Value = IsError (Cells (k, 3) .Value) Next k End Sub

Когато стартирате този код, ще получим резултата по-долу в колона 4.

Където и да е TRUE, тази стойност е стойност за грешка.
Неща за запомняне
- ISERROR връща булев резултат от типа, т.е. TRUE или FALSE.
- Предлага се като функция на работен лист, както и като функция на VBA.
- Полезен е като част от големи VBA проекти.
- Той разпознава само предварително определени стойности на грешки (тип грешка при четене).