VBA IsError | Jak používat funkci ISERROR ve VBA? (Příklady)

Funkce ISERROR aplikace Excel VBA

VBA IsError samotný název funkce shrnuje funkčnost. Tato funkce určí, zda hodnota, kterou jsme zadali, je chybová nebo ne. Pokud je zadaná hodnota nebo referenční hodnota rozsahu chybová hodnota, dostaneme výsledek jako „TRUE“, pokud hodnota není chybovou hodnotou, dostaneme výsledek jako „FALSE“.

Syntax

Výraz není nic jiného než hodnota, kterou testujeme, nebo referenční hodnota buňky nebo výraz vzorce. A jak vidíte, výsledek bude „Boolean“.

Příklady

Tuto šablonu VBA ISERROR Excel si můžete stáhnout zde - Šablona VBA ISERROR Excel

Příklad č. 1

Uvidíme jednoduchý příklad, abychom zjistili, zda je hodnota chybou nebo ne. Například v buňce A1 máme nižší hodnotu.

Budeme testovat, zda je tato hodnota chybová nebo ne.

  • Spusťte kód makra.

Kód:

 Sub IsError_Example1 () End Sub 

  • Deklarujte proměnnou k uložení hodnoty buňky A1.

Kód:

 Sub IsError_Example1 () Dim ExpValue jako varianta End Sub 

  • Nyní této proměnné ve VBA přiřaďte hodnotu buňky A1.

Kód:

 Sub IsError_Example1 () Dim ExpValue jako varianta ExpValue = Range ("A1"). Hodnota End Sub 

  • Nyní otestujte, zda je tato hodnota proměnné chybou nebo ne.

Kód:

 Sub IsError_Example1 () Dim ExpValue jako varianta ExpValue = Range ("A1"). Hodnota IsError (ExpValue) End Sub 

  • Uzavřete tento výsledek do pole se zprávou ve VBA.

Kód:

 Sub IsError_Example1 () Dim ExpValue jako varianta ExpValue = Range ("A1"). Hodnota MsgBox IsError (ExpValue) End Sub 

Dobře, spustíme kód a uvidíme výsledek funkce ISERROR.

Výsledek je PRAVDA, protože hodnota v buňce A1 je # DIV / 0! což je chyba dělení.

Nyní změníme hodnotu buňky A1 na „Hello“.

Nyní spusťte kód a podívejte se na výsledek.

Výsledek je tedy NEPRAVDA, protože hodnota v buňce A1 není chybová hodnota.

Nejprve tedy musíme pochopit, jaké jsou typy chyb a proč k nim dochází v listu aplikace Excel. Níže jsou uvedeny podrobné chybové hodnoty a vysvětlení.

  • # DIV / 0: K této chybě dochází hlavně proto, že když se pokusíme vydělit číslo nulou. Tato chyba s názvem „Dělení nulou“
  • # N / A: Když se pokusíte načíst data z jiné tabulky a pokud nebyla nalezena žádná hodnota, dostaneme tuto chybu a tato chyba se nazývá „Není k dispozici“.
  • # NÁZOV ?: Pokud aplikace Excel nedokáže rozpoznat vzorec nebo název, dostaneme tuto chybu.
  • #NULL !: Když zadáte mezeru mezi odkazy na buňky místo čárky.
  • # NUM ! : Numerická hodnota zadaná do dat není platná.
  • #HODNOTA !: Když odkazujete na hodnoty buněk pro matematické výpočty a pokud formát čísla není správný, dostaneme tuto chybu.
  • #REF !: Pokud je buňkou vzorec, má odkazy na buňky a pokud je tato buňka odstraněna, dostaneme tuto chybu odkazu.

Příklad č. 2

Nyní se podívejte na níže uvedenou datovou sadu.

Musíme identifikovat, jaké jsou chybové hodnoty z tohoto seznamu, a výsledek uložit TRUE nebo FALSE do dalšího sloupce.

Protože musíme otestovat více než jednu buňku, musíme to zahrnout do smyček, níže uvedený kód identifikuje chybové hodnoty.

Kód:

 Sub IsError_Example2 () Dim k As Integer Pro k = 2 až 12 buněk (k, 4). Hodnota = IsError (buňky (k, 3). Hodnota) Další k Konec Sub 

Když spustíte tento kód, dostaneme níže výsledek ve sloupci 4.

Kdekoli je TRUE, tato hodnota je chybová hodnota.

Věci k zapamatování

  • ISERROR vrací výsledek typu Boolean, tj. TRUE nebo FALSE.
  • Je k dispozici jako funkce listu i jako funkce VBA.
  • Je to užitečné jako součást velkých projektů VBA.
  • Rozpoznává pouze předem určené chybové hodnoty (typ chyby čtení).