FEIL-funksjon i Excel med formeleksempler

  • Dele Denne
Michael Brown

Opplæringen ser på den praktiske bruken av Excel ISERROR-funksjonen og viser hvordan du tester forskjellige formler for feil.

Når du skriver en formel som Excel ikke forstår eller ikke kan beregne, gjør den oppmerksomheten din til problemet ved å vise en feilmelding. FEIL-funksjonen kan hjelpe deg med å fange opp feil og gi et alternativ når en feil blir funnet.

    FEIL-funksjonen i Excel

    Excel-FEIL-funksjonen fanger opp alle typer feil, inkludert #CALC!, #DIV/0!, #N/A, #NAME?, #NUM!, #NULL!, #REF!, #VALUE! og #SPILL!. Resultatet er en boolsk verdi: TRUE hvis det oppdages en feil, ellers FALSE.

    Funksjonen er tilgjengelig i alle versjoner av Excel 2000 til og med 2021 og Excel 365.

    Syntaksen til ISERROR funksjonen er så enkel som denne:

    FEIL(verdi)

    Hvor verdi er celleverdien eller formelen som skal sjekkes for feil.

    Excel FEIL-formel

    For å lage en FEIL-formel i sin enkleste form, oppgi en referanse til cellen du vil teste for feil. For eksempel:

    =ISERROR(A2)

    Hvis en feil blir funnet, får du TRUE. Hvis det ikke er noen feil i den testede cellen, får du FALSE:

    HVIS FEIL formel i Excel

    For å returnere en egendefinert melding eller utføre en annen beregning når det oppstår en feil, bruk FEIL sammen med HVIS-funksjonen. Den generiske formelen ser ut som følger:

    HVIS(FEIL( formel(…), tekst_eller_beregning_hvis_feil, formel())

    Oversatt til et menneskelig språk, står det: hvis hovedformelen resulterer i en feil, vis den spesifiserte teksten eller kjør en annen beregning, ellers returner et normalt resultat av formelen.

    I bildet nedenfor genererer det å dele totalen på antallet et par feil i Prisen kolonne:

    For å erstatte alle forskjellige feilkoder med en egendefinert tekst, kan du bruke følgende HVIS FEIL formel:

    =IF(ISERROR(A2/B2), "Unknown", A2/B2)

    I Excel 2007 og senere versjoner kan det samme resultatet oppnås ved hjelp av den innebygde IFERROR-funksjonen:

    =IFERROR(A2/B2, "Unknown")

    Det skal være bemerket at IFERROR-formelen kjører litt raskere fordi den utfører A2/B2-beregningen bare én gang. Mens IF ISERROR beregner den to ganger - først for å se om den genererer en feil og så igjen hvis testen er FALSE.

    IF ISERROR VLOOKUP-formel

    Å bruke ISERROR med VLOOKUP er faktisk et spesielt tilfelle av IF IS FEIL-formelen diskutert ovenfor. Når VLOOKUP-funksjonen ikke finner oppslagsverdien eller mislykkes av en annen grunn, viser du en egendefinert tekstmelding ved å bruke denne syntaksen:

    IF(FEIL(VLOOKUP(…)), " custom_text", VLOOKUP(...))

    For dette eksemplet, la oss trekke tidene fra oppslagstabellen (D3:E10) til hovedtabellen (A3:B15). Hvis oppslagsverdien (deltakerens navn) ikke finnes ioppslagstabell, returnerer vi "Ikke kvalifisert".

    =IF(ISERROR(VLOOKUP(A3, $D$3:$E$10, 2, FALSE)), "Not qualified", VLOOKUP(A3, $D$3:$E$10, 2, FALSE))

    Tips. Hvis du bare vil vise en egendefinert tekst når en oppslagsverdi ikke er funnet (#N/A feil) og ignorerer andre feil, bruker du formelen IFNA VLOOKUP i Excel 2013 og nyere eller IF ISNA VLOOKUP i eldre versjon versjoner.

    HVIS FEIL INDEX MATCH formel

    Når du utfører et oppslag ved hjelp av INDEX MATCH-kombinasjonen (eller INDEX XMATCH-formelen i Excel 365), kan du fange og håndtere eventuelle feil ved å bruke samme teknikk - FEIL-funksjonen ser etter feil og HVIS viser den angitte teksten når en feil oppstår.

    HVIS(FEIL(INDEKS ( returkolonne , MATCH ( oppslagsverdi , oppslagskolonne<2)>, 0)))), " egendefinert_tekst ", INDEX ( returkolonne , MATCH ( oppslagsverdi , oppslagskolonne , 0)))

    Anta at oppslagstabellen har tider i den første kolonnen. Siden VLOOKUP ikke er i stand til å se til venstre, bruker vi INDEX MATCH-formelen til å hente tidene fra kolonne D:

    =INDEX($D$3:$D$10, MATCH(A3, $E$3:$E$10, 0))

    Og så legger du den i den ovennevnte generiske formelen for å erstatte de fangede feilene med hvilken som helst tekst du vil:

    =IF(ISERROR(INDEX($D$3:$D$10, MATCH(A3, $E$3:$E$10, 0))), "Not qualified", INDEX($D$3:$D$10, MATCH(A3, $E$3:$E$10, 0)))

    Merk. Som med IF ISERROR VLOOKUP-formelen, er det mer fornuftig å fange bare #N/A-feil og ikke skjule potensielle problemer med selve formelen. For dette, pakk inn INDEX MATH-formelen i IFNA i Excel 2013 og høyere eller IF ISNA i tidligere versjoner.

    HVISFEIL Ja/Nei-formel

    I alle de foregående eksemplene returnerte IFFEIL resultatet av hovedformelen hvis det ikke er en feil. Det kan imidlertid også fungere på en annen måte - returner noe hvis feil og noe annet hvis ingen feil.

    HVIS(FEIL( formel (...)), " tekst_hvis_feil " , " text_if_no_error ")

    I vårt eksempeldatasett, anta at du ikke er interessert i de nøyaktige tidspunktene, du vil bare vite hvilke deltakere fra gruppe A som er kvalifisert og hvilke som ikke er det. For å gjøre dette, bruk MATCH-funksjonen til å sammenligne navnet i kolonne A med listen over de kvalifiserte deltakerne i kolonne D, og ​​server deretter resultatene til ISERROR. Hvis navnet ikke er tilgjengelig i kolonne D (MATCH returnerer en feil), får HVIS-funksjonen til å vise "Nei" eller "Ikke kvalifisert". Hvis navnet vises i kolonne D (ingen feil), returner "Ja" eller "Kvalifisert".

    =IF(ISERROR(MATCH(A3, $D$3:$D$10, 0)), "No", "Yes" )

    Hvordan telle antall feil

    For å få antall feil i en bestemt kolonne, må du sjekke et område, ikke bare én celle. For dette, "mat" målområdet til ISERROR og tving de returnerte boolske verdiene til 1-er og 0-er ved å bruke den doble unære operatoren (--). SUM- eller SUMPRODUKT-funksjonen kan legge sammen tallene og levere det endelige resultatet.

    For eksempel:

    =SUM(--ISERROR(C2:C10))

    Vær oppmerksom på at dette fungerer som en vanlig formel bare i Excel 365 og Excel 2021, som støtter dynamiske matriser. I Excel 2019 og tidligere, dumå trykke Ctrl + Shift + Enter for å lage en matriseformel (ikke skriv krøllede parenteser manuelt, det vil ikke fungere!):

    {=SUM(--ISERROR(C2:C10))}

    Alternativt kan du bruke SUMPRODUCT funksjon som håndterer arrays naturlig, slik at formelen kan fullføres med den vanlige Enter-tasten i alle versjoner:

    =SUMPRODUCT(--ISERROR(C2:C10))

    Forskjellen mellom ISERROR og IFERROR i Excel

    Både ISERROR- og IFERROR-funksjonene brukes til å felle og håndtere feil i Excel. Forskjellen er som følger:

    • I sin rene form tester ISERROR bare om verdien er en feil eller ikke. Den er tilgjengelig i alle Excel-versjoner.
    • IFERROR-funksjonen er utviklet for å undertrykke eller skjule feil – når en feil blir funnet, returnerer den en annen verdi som du angir. Den er tilgjengelig i Excel 2007 og høyere.

    Ved første øyekast ser IFERROR ut som et stenografisk alternativ til IF ISERROR-formelen. Ved en nærmere titt kan du imidlertid legge merke til forskjellen:

    • IFERROR lar deg spesifisere bare verdi_hvis_feil . Hvis det ikke er noen feil, returnerer den alltid resultatet av den testede verdien/formelen.
    • HVIS FEIL gir mer fleksibilitet og lar deg håndtere begge situasjonene - hva skal skje hvis en feil og hva hvis ingen feil.

    For bedre å illustrere poenget, vurder disse formlene:

    =IFERROR(A1, "Calculation error")

    =IF(ISERROR(A1), "Calculation error", A1)

    Disse to formlene er likeverdige - begge kontrollerer en formeldrevet verdi i A1 og retur"Beregningsfeil" hvis det er en feil, ellers - returner verdien.

    Men hva om du vil utføre en utregning hvis verdien i A1 ikke er en feil? IFERROR-funksjonen kan ikke gjøre det. I tilfelle IF FEIL, skriv bare inn ønsket beregning i det siste argumentet. For eksempel:

    =IF(ISERROR(A1), "Calculation error", A1*2)

    Som du ser, kan denne lengre varianten av IFERROR-formelen, som ofte anses som utdatert, fortsatt være nyttig :)

    Tilgjengelige nedlastinger

    FEIL-formeleksempler (.xlsx-fil)

    Michael Brown er en dedikert teknologientusiast med en lidenskap for å forenkle komplekse prosesser ved hjelp av programvareverktøy. Med mer enn ti års erfaring i teknologibransjen, har han forbedret ferdighetene sine i Microsoft Excel og Outlook, samt Google Sheets og Docs. Michaels blogg er dedikert til å dele sin kunnskap og ekspertise med andre, og gir enkle å følge tips og veiledninger for å forbedre produktivitet og effektivitet. Enten du er en erfaren profesjonell eller nybegynner, tilbyr Michaels blogg verdifull innsikt og praktiske råd for å få mest mulig ut av disse viktige programvareverktøyene.