ISERROR funkcija programmā Excel ar formulas piemēriem

  • Dalīties Ar Šo
Michael Brown

Šajā pamācībā aplūkots Excel funkcijas ISERROR praktiskais lietojums un parādīts, kā pārbaudīt dažādas formulas, vai tajās nav kļūdu.

Ja rakstāt formulu, kuru Excel nesaprot vai nespēj aprēķināt, tā pievērš jūsu uzmanību problēmai, parādot kļūdas ziņojumu. Funkcija ISERROR var palīdzēt jums pamanīt kļūdas un sniegt alternatīvu, ja ir konstatēta kļūda.

    ISERROR funkcija programmā Excel

    Excel ISERROR funkcija konstatē visu veidu kļūdas, tostarp #CALC!, #DIV/0!, #N/A, #NAME?, #NUM!, #NULL!, #REF!, #VALUE! un #SPILL!. Rezultāts ir logaritmiska vērtība: TRUE, ja ir konstatēta kļūda, FALSE, ja nav konstatēta.

    Šī funkcija ir pieejama visās Excel 2000 līdz 2021 un Excel 365 versijās.

    Funkcijas ISERROR sintakse ir ļoti vienkārša:

    ISERROR(vērtība)

    Kur vērtība ir šūnas vērtība vai formula, kas jāpārbauda, lai atrastu kļūdas.

    Excel ISERROR formula

    Lai izveidotu ISERROR formulu visvienkāršākajā formā, ievadiet atsauci uz šūnas, kurā vēlaties pārbaudīt, vai nav kļūdas. Piemēram:

    =ISERROR(A2)

    Ja tiek atrasta kāda kļūda, tiks iegūts TRUE. Ja pārbaudāmajā šūnā nav kļūdas, tiks iegūts FALSE:

    IF ISERROR formula programmā Excel

    Lai kļūdas gadījumā atgrieztu pielāgotu ziņojumu vai veiktu citu aprēķinu, izmantojiet ISERROR kopā ar funkciju IF. Vispārīgā formula izskatās šādi:

    IF(ISERROR( formula (...), text_or_calculation_if_error , formula ())

    Tulkojot cilvēka valodā, tas nozīmē: ja galvenā formula rada kļūdu, parādiet norādīto tekstu vai izpildiet citu aprēķinu, pretējā gadījumā atgrieziet parasto formulas rezultātu.

    Tālāk attēlā kopsummas dalīšana ar daudzumu rada pāris kļūdas. Cena sleja:

    Lai aizstātu visus dažādos kļūdu kodus ar pielāgotu tekstu, varat izmantot šādu formulu IF ISERROR:

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

    Programmā Excel 2007 un jaunākajās versijās to pašu rezultātu var panākt, izmantojot iebūvēto funkciju IFERROR:

    =IFERROR(A2/B2, "Unknown")

    Jāatzīmē, ka IFERROR formula darbojas nedaudz ātrāk, jo tā veic A2/B2 aprēķinu tikai vienu reizi. Savukārt IF ISERROR aprēķina to divas reizes - vispirms, lai pārbaudītu, vai tiek ģenerēta kļūda, un pēc tam vēlreiz, ja tests ir FALSE.

    IF ISERROR VLOOKUP formula

    ISERROR izmantošana ar VLOOKUP faktiski ir īpašs iepriekš aplūkotās formulas IF ISERROR gadījums. Ja VLOOKUP funkcija nevar atrast meklēšanas vērtību vai neizdodas kāda cita iemesla dēļ, izmantojot šo sintaksi, tiek parādīts pielāgots teksta ziņojums:

    IF(ISERROR(VLOOKUP(...)), " custom_text ", VLOOKUP(...))

    Šajā piemērā izvilksim laikus no meklēšanas tabulas (D3:E10) uz galveno tabulu (A3:B15). Ja meklēšanas vērtība (dalībnieka vārds) neeksistē meklēšanas tabulā, mēs atgriezīsim "Nav kvalificēts".

    =IF(ISERROR(VLOOKUP(A3, $D$3:$E$10, 2, FALSE)), "Nav kvalificēts", VLOOKUP(A3, $D$3:$E$10, 2, FALSE))

    Padoms. Ja vēlaties, lai pielāgotais teksts tiktu parādīts tikai tad. nav atrasta meklēšanas vērtība (#N/A kļūda), ignorējot citas kļūdas, tad izmantojiet IFNA VLOOKUP formulu programmā Excel 2013 un jaunākās versijās vai IF ISNA VLOOKUP vecākās versijās.

    IF ISERROR INDEX MATCH formula

    Veicot meklēšanu, izmantojot kombināciju INDEX MATCH (vai INDEX XMATCH formulu programmā Excel 365), varat notvert un apstrādāt visas iespējamās kļūdas, izmantojot to pašu paņēmienu - funkcija ISERROR pārbauda, vai nav pieļautas kļūdas, un, ja rodas kāda kļūda, IF parāda norādīto tekstu.

    IF(ISERROR(INDEX ( return_column , MATCH ( lookup_value , lookup_column , 0)))), " custom_text ", INDEX ( return_column , MATCH ( lookup_value , lookup_column , 0)))

    Pieņemsim, ka pirmajā slejā ir laiki. Tā kā VLOOKUP nevar meklēt pa kreisi, mēs izmantojam INDEX MATCH formulu, lai iegūtu laikus no D slejas:

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

    Un pēc tam to ievietojiet iepriekš minētajā vispārīgajā formulā, lai aizvietotu noķertās kļūdas ar jebkuru tekstu:

    =IF(ISERROR(INDEX($D$3:$D$10, MATCH(A3, $E$3:$E$10, 0)), "Nav kvalificēts", INDEX($D$3:$D$10, MATCH(A3, $E$3:$E$10, 0)))

    Piezīme. Tāpat kā ar IF ISERROR VLOOKUP formulu, ir jēgpilnāk aizturēt tikai #N/A kļūdas un neslēpt iespējamās problēmas ar pašu formulu. Šim nolūkam iesaiņojiet INDEX MATH formulu ar IFNA programmā Excel 2013 un jaunākās versijās vai IF ISNA agrākajās versijās.

    IF ISERROR Jā/Nē formula

    Visos iepriekšējos piemēros IF ISERROR atgrieza galvenās formulas rezultātu, ja tā nav kļūda. Tomēr tas var darboties arī citādi - atgriezt kaut ko, ja ir kļūda, un kaut ko citu, ja nav kļūdas.

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

    Pieņemsim, ka mūsu parauga datu kopā jūs neinteresē precīzi laiki, jūs tikai vēlaties uzzināt, kuri A grupas dalībnieki ir kvalificēti un kuri nav. Lai to izdarītu, izmantojiet funkciju MATCH, lai salīdzinātu A slejā esošo nosaukumu ar kvalificēto dalībnieku sarakstu D slejā un pēc tam rezultātus iesniegtu ISERROR. Ja D slejā nav pieejams nosaukums (MATCH atgriež kļūdu), saņemietJa nosaukums parādās D slejā (nav kļūdas), atgriezt "Jā" vai "Kvalificēts". Ja nosaukums parādās D slejā (nav kļūdas), atgriezt "Jā" vai "Kvalificēts".

    =IF(ISERROR(MATCH(A3, $D$3:$D$10, 0)), "Nē", "Jā" )

    Kā saskaitīt kļūdu skaitu

    Lai iegūtu kļūdu skaitu noteiktā slejā, ir jāpārbauda diapazons, nevis tikai viena šūna. Šim nolūkam mērķa diapazonu "padodiet" ISERROR un iegūto Boolean vērtību pārveidojiet 1 un 0, izmantojot dubulto vienskaitļa operatoru (--). SUM vai SUMPRODUCT funkcija var saskaitīt skaitļus un iegūt galīgo rezultātu.

    Piemēram:

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

    Lūdzu, ņemiet vērā, ka šī darbojas kā parasta formula tikai programmā Excel 365 un Excel 2021, kas atbalsta dinamiskos masīvus. Programmā Excel 2019 un agrākajos modeļos, lai izveidotu masīva formulu, ir jānospiež taustiņi Ctrl + Shift + Enter (neievadiet lokanās iekavās manuāli, tas nedarbosies!):

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

    Varat arī izmantot funkciju SUMPRODUCT, kas dabiski apstrādā masīvus, tāpēc formulu var pabeigt ar parasto Enter taustiņu visās versijās:

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

    Atšķirība starp ISERROR un IFERROR programmā Excel

    Gan ISERROR, gan IFERROR funkcijas tiek izmantotas, lai Excel programmā fiksētu un apstrādātu kļūdas. Atšķirība ir šāda:

    • Tīrā veidā ISERROR tikai pārbauda, vai vērtība ir kļūda vai nav. Tā ir pieejama visās Excel versijās.
    • Funkcija IFERROR ir paredzēta kļūdu novēršanai vai maskēšanai - ja tiek atrasta kļūda, tā atgriež citu norādīto vērtību. Tā ir pieejama programmā Excel 2007 un jaunākās versijās.

    No pirmā acu uzmetiena IFERROR izskatās kā saīsināta alternatīva formulai IF ISERROR. Tomēr, ieskatoties tuvāk, var pamanīt atšķirību:

    • IFERROR ļauj norādīt tikai value_if_error Ja nav kļūdas, tas vienmēr atgriež pārbaudītās vērtības/formulas rezultātu.
    • IF ISERROR nodrošina lielāku elastību un ļauj apstrādāt abas situācijas - ko darīt, ja ir kļūda, un ko darīt, ja nav kļūdas.

    Lai to labāk ilustrētu, aplūkojiet šīs formulas:

    =IFERROR(A1, "Aprēķina kļūda")

    =IF(ISERROR(A1), "Aprēķina kļūda", A1)

    Šīs divas formulas ir līdzvērtīgas - abas pārbauda formulas vadītu vērtību A1 un atgriež "Aprēķina kļūda", ja tā ir kļūda, pretējā gadījumā - atgriež vērtību.

    Bet ko darīt, ja vēlaties veikt kādu aprēķinu, ja A1 vērtība nav kļūda? Funkcija IFERROR to nespēj izdarīt. IF ISERROR gadījumā pēdējā argumentā vienkārši ierakstiet vēlamo aprēķinu. Piemēram:

    =IF(ISERROR(A1), "Aprēķina kļūda", A1*2)

    Kā redzat, šī garākā IFERROR formulas variācija, kas bieži tiek uzskatīta par novecojušu, joprojām var būt noderīga :)

    Pieejamās lejupielādes

    ISERROR formulas piemēri (.xlsx fails)

    Maikls Brauns ir īpašs tehnoloģiju entuziasts, kura aizraušanās ir sarežģītu procesu vienkāršošana, izmantojot programmatūras rīkus. Ar vairāk nekā desmit gadu pieredzi tehnoloģiju nozarē viņš ir pilnveidojis savas prasmes programmās Microsoft Excel un Outlook, kā arī Google izklājlapās un dokumentos. Maikla emuārs ir veltīts tam, lai dalītos savās zināšanās un pieredzē ar citiem, sniedzot viegli izpildāmus padomus un pamācības produktivitātes un efektivitātes uzlabošanai. Neatkarīgi no tā, vai esat pieredzējis profesionālis vai iesācējs, Maikla emuārs piedāvā vērtīgas atziņas un praktiskus padomus, kā maksimāli izmantot šos būtiskos programmatūras rīkus.