VBA ISFOUT

Excel VBA ISFOUT-functie

VBA IsError de functienaam zelf vat de functionaliteit samen. Deze functie identificeert of de waarde die we hebben opgegeven een foutwaarde is of niet. Als de opgegeven waarde of bereikreferentiewaarde een foutwaarde is, krijgen we het resultaat als “TRUE”, als de waarde geen foutwaarde is, krijgen we het resultaat als “FALSE”.

Syntaxis

Expressie is niets anders dan de waarde die we testen of de celreferentiewaarde of formule-expressie. En zoals u kunt zien, is het resultaat "Boolean".

Voorbeelden

U kunt deze VBA ISERROR Excel-sjabloon hier downloaden - VBA ISERROR Excel-sjabloon

Voorbeeld 1

We zullen een eenvoudig voorbeeld zien om te zien of de waarde een fout is of niet. We hebben bijvoorbeeld een onderstaande waarde in cel A1.

We zullen testen of deze waarde een foutwaarde is of niet.

  • Start de macrocode.

Code:

 Sub IsError_Example1 () End Sub 

  • Declareer een variabele om de A1-waarde van de cel op te slaan.

Code:

 Sub IsError_Example1 () Dim ExpValue As Variant End Sub 

  • Wijs nu de waarde van cel A1 toe aan deze variabele in VBA.

Code:

 Sub IsError_Example1 () Dim ExpValue As Variant ExpValue = Range ("A1"). Waarde End Sub 

  • Test nu of deze variabele waarde een fout is of niet.

Code:

 Sub IsError_Example1 () Dim ExpValue As Variant ExpValue = Range ("A1"). Waarde IsError (ExpValue) End Sub 

  • Voeg dit resultaat toe aan een berichtvenster in VBA.

Code:

 Sub IsError_Example1 () Dim ExpValue As Variant ExpValue = Range ("A1"). Waarde MsgBox IsError (ExpValue) End Sub 

Oké, laten we de code uitvoeren en het resultaat van de ISERROR-functie bekijken.

Het resultaat is WAAR omdat de waarde in cel A1 # DIV / 0 is! dat is de splitsingsfout.

Nu zullen we de waarde van de cel A1 veranderen in "Hallo".

Voer nu de code uit en zie het resultaat.

Het resultaat is nu dus FALSE omdat de waarde in cel A1 niet de foutwaarde is.

Dus eerst moeten we begrijpen wat de fouttypen zijn en waarom ze voorkomen in het Excel-werkblad. Hieronder staan ​​de gedetailleerde foutwaarden en uitleg.

  • # DIV / 0: Deze fout treedt voornamelijk op omdat wanneer we proberen het getal door nul te delen. Deze fout genaamd 'Division by Zero'
  • # N / A: Wanneer u de gegevens uit een andere tabel probeert op te halen en als de waarde no wordt gevonden, krijgen we deze foutmelding en deze fout wordt "Niet beschikbaar" genoemd.
  • #NAAM ?: Als Excel de formule of naam niet kan herkennen, krijgen we deze foutmelding.
  • #NULL !: Wanneer u een spatie tussen de celverwijzingen opgeeft in plaats van een komma.
  • #NUM !: De numerieke waarde die aan de gegevens is verstrekt, is niet geldig.
  • #WAARDE !: Wanneer u naar de celwaarden verwijst voor wiskundige berekeningen en als de getalnotatie niet correct is, krijgen we deze foutmelding.
  • #REF !: Als de cel een formule is, heeft deze celverwijzingen en als die cel waarnaar wordt verwezen wordt verwijderd, krijgen we deze verwijzingsfout.

Voorbeeld # 2

Kijk nu naar de onderstaande dataset.

We moeten de foutwaarden uit deze lijst identificeren en het resultaat TRUE of FALSE opslaan in de volgende kolom.

Omdat we meer dan één cel moeten testen, moeten we dit in loops opnemen, de onderstaande code identificeert de foutwaarden.

Code:

 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 

Wanneer u deze code uitvoert, krijgen we onder het resultaat in kolom 4.

Waar waar ook is, die waarde is een foutwaarde.

Dingen om te onthouden

  • ISFOUT geeft het resultaat van het Booleaanse type terug, dwz TRUE of FALSE.
  • Het is beschikbaar als werkbladfunctie en als VBA-functie.
  • Het is handig als onderdeel van grote VBA-projecten.
  • Het herkent alleen vooraf bepaalde foutwaarden (leesfouttype).