VBA IsError - Hur använder jag ISERROR-funktionen i VBA? (Exempel)

Innehållsförteckning

Excel VBA ISERROR-funktion

VBA IsError själva funktionsnamnet sammanfattar funktionaliteten. Denna funktion kommer att identifiera om det värde vi har angett är ett felvärde eller inte. Om det angivna värdet eller områdesreferensvärdet är ett felvärde får vi resultatet som "SANT", om värdet inte är ett felvärde får vi resultatet som "FALSE".

Syntax

Uttrycket är inget annat än det värde vi testar eller cellreferensvärdet eller formeluttrycket. Och som du kan se blir resultatet "booleskt".

Exempel

Exempel 1

Vi ser ett enkelt exempel för att hitta om värdet är ett fel eller inte. Till exempel har vi under värdet i cell A1.

Vi kommer att testa om detta värde är ett felvärde eller inte.

  • Starta makrokoden.

Koda:

Sub IsError_Example1 () Avsluta Sub
  • Deklarera en variabel för att lagra cell A1-värdet.

Koda:

Sub IsError_Example1 () Dim ExpValue As Variant End Sub
  • Tilldela nu värdet på cell A1 till denna variabel i VBA.

Koda:

Sub IsError_Example1 () Dim ExpValue As Variant ExpValue = Range ("A1"). Value End Sub
  • Testa nu om detta variabla värde är ett fel eller inte.

Koda:

Sub IsError_Example1 () Dim ExpValue As Variant ExpValue = Range ("A1"). Värde IsError (ExpValue) End Sub
  • Bifoga detta resultat i en meddelandefält i VBA.

Koda:

Sub IsError_Example1 () Dim ExpValue As Variant ExpValue = Range ("A1"). Värde MsgBox IsError (ExpValue) Slut Sub

Ok, låt oss köra koden och se resultatet av ISERROR-funktionen.

Resultatet är SANT eftersom värdet i cell A1 är # DIV / 0! vilket är delningsfelet.

Nu ändrar vi värdet på cellen A1 till "Hej".

Kör nu koden och se resultatet.

Så resultatet är FALSKT nu eftersom värdet i cell A1 inte är felvärdet.

Så först måste vi förstå vad som är feltyperna och varför de förekommer i Excel-kalkylblad. Nedan finns detaljerade felvärden och förklaringar.

  • # DIV / 0: Detta fel uppstår främst för att när vi försöker dela numret med noll. Detta fel kallas "Division by Zero."
  • # Ej tillämpligt: När du försöker hämta data från olika tabeller, och om inget värde hittas, får vi det här felet och detta fel heter "Ej tillgängligt."
  • #NAMN ?: Om Excel inte kan känna igen formeln eller namnet får vi det här felet.
  • #NULL !: När du anger ett mellanslag mellan cellreferenser istället för ett komma.
  • #NUM !: Det numeriska värdet som levereras till data är inte giltigt.
  • #VÄRDE !: När du refererar till cellvärdena för matematiska beräkningar och om talformatet inte är korrekt får vi det här felet.
  • #REF !: Om cellen är en formel har den cellreferenser, och om den refererade cellen raderas får vi detta referensfel.

Exempel 2

Titta nu på datauppsättningen nedan.

Vi måste identifiera vilka felvärden som finns i den här listan och lagra resultatet, antingen SANT eller FALSK, i nästa kolumn.

Eftersom vi behöver testa mer än en cell måste vi inkludera detta i slingor; nedanstående kod kommer att identifiera felvärdena.

Koda:

Sub IsError_Example2 () Dim k som heltal För k = 2 till 12 celler (k, 4). Värde = IsError (celler (k, 3). Värde) Nästa k Avsluta Sub

När du kör den här koden får vi resultatet nedan i kolumn 4.

Varhelst SANT finns, är det värdet ett felvärde.

Saker att komma ihåg

  • ISERROR returnerar det booleska resultatet, dvs. antingen SANT eller FALSKT.
  • Den är tillgänglig både som en kalkylbladfunktion och som en VBA-funktion.
  • Det är användbart som en del av stora VBA-projekt.
  • Den känner bara igen förutbestämda felvärden (Läsfelstyp).

Intressanta artiklar...