ISERROR funkcija u Excelu s primjerima formula

  • Podijeli Ovo
Michael Brown

Udžbenik razmatra praktičnu upotrebu Excelove funkcije ISERROR i pokazuje kako testirati različite formule za pogreške.

Kada napišete formulu koju Excel ne razumije ili ne može izračunati, skreće vam pozornost na problem prikazivanjem poruke o pogrešci. Funkcija ISERROR može vam pomoći u otkrivanju pogrešaka i pružiti alternativu kada se pogreška pronađe.

    Funkcija ISERROR u programu Excel

    Funkcija ISERROR programa Excel hvata sve vrste pogrešaka, uključujući #CALC!, #DIV/0!, #N/A, #NAME?, #NUM!, #NULL!, #REF!, #VALUE! i #SPILL!. Rezultat je Booleova vrijednost: TRUE ako se otkrije pogreška, FALSE u suprotnom.

    Funkcija je dostupna u svim verzijama programa Excel 2000 do 2021 i Excel 365.

    Sintaksa ISERROR funkcija je jednostavna kao ova:

    ISERROR(vrijednost)

    Gdje je vrijednost vrijednost ćelije ili formula za provjeru grešaka.

    Excel ISERROR formula

    Da biste stvorili formulu ISERROR u najjednostavnijem obliku, navedite referencu na ćeliju koju želite testirati na pogreške. Na primjer:

    =ISERROR(A2)

    U slučaju da se pronađe bilo kakva pogreška, dobit ćete TRUE. Ako nema pogreške u testiranoj ćeliji, dobit ćete FALSE:

    IF ISERROR formulu u programu Excel

    Da biste vratili prilagođenu poruku ili izvršili drugačiji izračun kada se pojavi pogreška, koristite ISERROR zajedno s funkcijom IF. Generička formula izgleda ovako:

    IF(ISERROR( formula(…), text_or_calculation_if_error, formula())

    Prevedeno na ljudski jezik, kaže: ako glavna formula rezultira u pogrešci, prikažite navedeni tekst ili pokrenite drugi izračun, inače vratite normalan rezultat formule.

    Na slici ispod, dijeljenje ukupnog iznosa s količinom generira nekoliko pogrešaka u Cijeni stupac:

    Da biste zamijenili sve različite kodove pogrešaka prilagođenim tekstom, možete koristiti sljedeću formulu IF ISERROR:

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

    U programu Excel 2007 i novijim verzijama isti se rezultat može postići uz pomoć ugrađene funkcije IFERROR:

    =IFERROR(A2/B2, "Unknown")

    Trebalo bi biti primijetio da formula IFERROR radi malo brže jer izvodi izračun A2/B2 samo jednom. Dok IF ISERROR to izračunava dvaput - prvo da vidi hoće li generirati pogrešku, a zatim opet ako je test FALSE.

    IF ISERROR VLOOKUP formula

    Korištenje ISERROR s VLOOKUP-om je, zapravo, poseban slučaj IF IS Formula GREŠKE o kojoj smo govorili gore. Kada funkcija VLOOKUP ne može pronaći traženu vrijednost ili ne uspije iz bilo kojeg drugog razloga, prikazujete prilagođenu tekstualnu poruku pomoću ove sintakse:

    IF(ISERROR(VLOOKUP(…)), " prilagođeni_tekst", VLOOKUP(…))

    Za ovaj primjer, povucimo vremena iz tablice pretraživanja (D3:E10) u glavnu tablicu (A3:B15). Ako tražena vrijednost (ime sudionika) ne postoji utablicu za pretraživanje, vratit ćemo "Nije kvalificirano".

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

    Savjet. Ako želite prikazati prilagođeni tekst samo kada vrijednost traženja nije pronađena (pogreška #N/A) zanemarujući druge pogreške, upotrijebite formulu IFNA VLOOKUP u programu Excel 2013 i novijim ili IF ISNA VLOOKUP u starijim verzijama verzije.

    IF ISERROR INDEX MATCH formula

    Prilikom traženja uz pomoć kombinacije INDEX MATCH (ili formule INDEX XMATCH u programu Excel 365), možete uhvatiti i obraditi sve moguće pogreške koristeći istu tehniku ​​- funkcija ISERROR provjerava pogreške i IF prikazuje navedeni tekst kada se pojavi bilo kakva pogreška.

    IF(ISERROR(INDEX ( return_column , MATCH ( lookup_value , lookup_column<2)>, 0)))), " prilagođeni_tekst ", INDEX ( povratni_stupac , MATCH ( tražna_vrijednost , tražni_stupac , 0)))

    Pretpostavimo da pregledna tablica ima vremena u prvom stupcu. Budući da VLOOKUP ne može pogledati ulijevo, koristimo formulu INDEX MATCH za povlačenje vremena iz stupca D:

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

    A zatim ga ugniježdite u gore spomenutu generičku formulu da biste uhvaćene pogreške zamijenili bilo kojim tekstom koji želite:

    =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)))

    Napomena. Kao i kod formule IF ISERROR VLOOKUP, ima više smisla uhvatiti samo #N/A pogreške i ne prikrivati ​​potencijalne probleme samom formulom. U tu svrhu zamotajte svoju formulu INDEX MATH u IFNA u programu Excel 2013 i novijim verzijama ili IF ISNA u ranijim verzijama.

    AKOISERROR Da/Ne formula

    U svim prethodnim primjerima, IF ISERROR je vratio rezultat glavne formule ako to nije pogreška. Međutim, može funkcionirati i na drugačiji način - vratiti nešto ako je pogreška, a nešto drugo ako nema pogreške.

    IF(ISERROR( formula (…)), " text_if_error " , " text_if_no_error ")

    U našem oglednom skupu podataka, pretpostavimo da vas ne zanimaju točna vremena, samo želite znati koji su sudionici iz skupine A kvalificirani, a koji nisu. Da biste to učinili, upotrijebite funkciju MATCH za usporedbu imena u stupcu A s popisom kvalificiranih sudionika u stupcu D, a zatim poslužite rezultate ISERROR-u. Ako naziv nije dostupan u stupcu D (MATCH vraća pogrešku), neka funkcija IF prikaže "No" ili "Not qualified". Ako se ime pojavljuje u stupcu D (bez pogreške), vratite "Da" ili "Kvalificirano".

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

    Kako izbrojati broj pogrešaka

    Da biste dobili broj pogrešaka u određenom stupcu, trebate provjeriti raspon, a ne samo jednu ćeliju. U tu svrhu "ubacite" ciljni raspon u ISERROR i prisilite vraćene Booleove vrijednosti na 1 i 0 pomoću dvostrukog unarnog operatora (--). Funkcija SUM ili SUMPRODUCT može zbrojiti brojeve i isporučiti konačni rezultat.

    Na primjer:

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

    Napominjemo da ovo funkcionira kao redovita formula samo u Excelu 365 i Excel 2021, koji podržavaju dinamičke nizove. U Excelu 2019 i ranijim verzijama, vipotrebno je pritisnuti Ctrl + Shift + Enter za stvaranje formule polja (nemojte ručno upisivati ​​vitičaste zagrade, to neće raditi!):

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

    Alternativno, možete koristiti SUMPRODUCT funkcija koja nativno rukuje nizovima, tako da se formula može dovršiti uobičajenom tipkom Enter u svim verzijama:

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

    Razlika između ISERROR i IFERROR u Excelu

    I funkcije ISERROR i IFERROR koriste se za hvatanje i obradu pogrešaka u programu Excel. Razlika je sljedeća:

    • U svom čistom obliku, ISERROR samo testira je li vrijednost pogreška ili ne. Dostupna je u svim verzijama programa Excel.
    • Funkcija IFERROR dizajnirana je za suzbijanje ili prikrivanje pogrešaka - kada se pronađe pogreška, vraća drugu vrijednost koju navedete. Dostupan je u Excelu 2007 i novijim.

    Na prvi pogled, IFERROR izgleda kao skraćena alternativa formuli IF ISERROR. Međutim, ako bolje pogledate, možete primijetiti razliku:

    • IFERROR vam omogućuje da navedete samo value_if_error . Ako nema pogreške, uvijek vraća rezultat testirane vrijednosti/formule.
    • IF ISERROR pruža veću fleksibilnost i omogućuje vam rješavanje obje situacije - što bi se trebalo dogoditi ako se pojavi pogreška, a što ako nema pogreške.

    Da biste bolje ilustrirali poantu, razmotrite ove formule:

    =IFERROR(A1, "Calculation error")

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

    Ove dvije formule su ekvivalentne - obje provjeravaju vrijednost vođenu formulom u A1 i povratak"Pogreška u izračunu" ako je pogreška, inače - vratite vrijednost.

    Ali što ako želite izvesti neki izračun ako vrijednost u A1 nije pogreška? Funkcija IFERROR to ne može učiniti. U slučaju IF ISERROR, samo upišite željeni izračun u zadnji argument. Na primjer:

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

    Kao što vidite, ova duža varijacija formule IFERROR, koja se često smatra zastarjelom, još uvijek može biti korisna :)

    Dostupna preuzimanja

    Primjeri formule ISERROR (.xlsx datoteka)

    Michael Brown predani je tehnološki entuzijast sa strašću za pojednostavljivanjem složenih procesa pomoću softverskih alata. S više od desetljeća iskustva u tehnološkoj industriji, usavršio je svoje vještine u Microsoft Excelu i Outlooku, kao i Google tablicama i dokumentima. Michaelov blog posvećen je dijeljenju znanja i stručnosti s drugima, pružajući savjete i upute koje je lako slijediti za poboljšanje produktivnosti i učinkovitosti. Bez obzira jeste li iskusni profesionalac ili početnik, Michaelov blog nudi vrijedne uvide i praktične savjete za izvlačenje maksimuma iz ovih osnovnih softverskih alata.