Talaan ng nilalaman
Ang tutorial ay tumitingin sa mga praktikal na paggamit ng Excel ISERROR function at nagpapakita kung paano subukan ang iba't ibang mga formula para sa mga error.
Kapag sumulat ka ng formula na hindi naiintindihan o hindi makalkula ng Excel, dinadala nito ang iyong pansin sa problema sa pamamagitan ng pagpapakita ng mensahe ng error. Ang ISERROR function ay makakatulong sa iyo na mahuli ang mga error at magbigay ng alternatibo kapag may nakitang error.
ISERROR function sa Excel
Ang Excel ISERROR function ay nakakakuha ng lahat ng uri ng mga error, kabilang ang #CALC!, #DIV/0!, #N/A, #NAME?, #NUM!, #NULL!, #REF!, #VALUE!, at #SPILL!. Ang resulta ay isang Boolean value: TRUE kung may nakitang error, FALSE kung hindi.
Available ang function sa lahat ng bersyon ng Excel 2000 hanggang 2021 at Excel 365.
Ang syntax ng ISERROR Ang function ay kasing simple nito:
ISERROR(value)Kung saan ang value ay ang cell value o formula na susuriin para sa mga error.
Excel ISERROR formula
Upang lumikha ng ISERROR formula sa pinakasimpleng anyo nito, magbigay ng reference sa cell na gusto mong subukan para sa mga error. Halimbawa:
=ISERROR(A2)
Kung sakaling may makitang error, makakakuha ka ng TRUE. Kung walang error sa sinubukang cell, makakakuha ka ng FALSE:
KUNG ISERROR formula sa Excel
Upang magbalik ng custom na mensahe o magsagawa ng ibang kalkulasyon kapag may naganap na error, gamitin ang ISERROR kasama ang IF function. Ang generic na formula ay ganito ang hitsura:
IF(ISERROR( formula(…), text_or_calculation_if_error, formula())Isinalin sa isang wika ng tao, sinasabi nito: kung magreresulta ang pangunahing formula sa isang error, ipakita ang tinukoy na text o magpatakbo ng isa pang kalkulasyon, kung hindi, magbalik ng normal na resulta ng formula.
Sa larawan sa ibaba, ang paghahati sa kabuuan sa dami ay bumubuo ng ilang mga error sa Presyo column:
Upang palitan ang lahat ng iba't ibang error code ng custom na text, maaari mong gamitin ang sumusunod na IF ISERROR formula:
=IF(ISERROR(A2/B2), "Unknown", A2/B2)
Sa Excel 2007 at mas bagong mga bersyon, ang parehong resulta ay maaaring makamit sa tulong ng inbuilt na function na IFERROR:
=IFERROR(A2/B2, "Unknown")
Dapat itong nabanggit na ang IFERROR formula ay tumatakbo nang mas mabilis dahil ginagawa nito ang pagkalkula ng A2/B2 nang isang beses lang. Samantalang KUNG ISERROR ay kinakalkula ito ng dalawang beses - una upang makita kung ito ay bumubuo ng isang error at pagkatapos ay muli kung ang pagsubok ay FALSE.
IF ISERROR VLOOKUP formula
Ang paggamit ng ISERROR sa VLOOKUP ay, sa katunayan, isang partikular na kaso ng IF IS ERROR formula na tinalakay sa itaas. Kapag hindi mahanap ng VLOOKUP function ang lookup value o nabigo para sa anumang iba pang dahilan, magpapakita ka ng custom na text message gamit ang syntax na ito:
IF(ISERROR(VLOOKUP(…)), " custom_text", VLOOKUP(…))Para sa halimbawang ito, hilahin natin ang mga oras mula sa lookup table (D3:E10) papunta sa main table (A3:B15). Kung ang lookup value (pangalan ng kalahok) ay hindi umiiral salookup table, ibabalik namin ang "Not qualified".
=IF(ISERROR(VLOOKUP(A3, $D$3:$E$10, 2, FALSE)), "Not qualified", VLOOKUP(A3, $D$3:$E$10, 2, FALSE))
Tip. Kung gusto mong magpakita lang ng custom na text kapag ang isang lookup value ay hindi nakita (#N/A error) na binabalewala ang iba pang mga error, pagkatapos ay gamitin ang IFNA VLOOKUP formula sa Excel 2013 at mas bago o IF ISNA VLOOKUP sa mas lumang mga bersyon.
KUNG ISERROR INDEX MATCH formula
Kapag nagsasagawa ng lookup sa tulong ng kumbinasyon ng INDEX MATCH (o INDEX XMATCH formula sa Excel 365), maaari mong bitag at pangasiwaan ang anumang posibleng mga error sa pamamagitan ng paggamit ng parehong pamamaraan - sinusuri ng function ng ISERROR ang mga error at ipinapakita ng IF ang tinukoy na text kapag may nangyaring error.
IF(ISERROR(INDEX ( return_column , MATCH ( lookup_value , lookup_column , 0)))), " custom_text ", INDEX ( return_column , MATCH ( lookup_value , lookup_column , 0)))Ipagpalagay na ang lookup table ay may mga oras sa unang column. Dahil hindi makatingin ang VLOOKUP sa kaliwa nito, ginagamit namin ang INDEX MATCH formula para kunin ang mga oras mula sa column D:
=INDEX($D$3:$D$10, MATCH(A3, $E$3:$E$10, 0))
At pagkatapos, ilalagay mo ito sa nabanggit na generic na formula upang palitan ang mga nahuli na error ng anumang text na gusto mo:
=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)))
Tandaan. Tulad ng IF ISERROR VLOOKUP formula, mas makatuwirang ma-trap ang mga #N/A error lang at huwag itago ang mga potensyal na problema sa mismong formula. Para dito, balutin ang iyong INDEX MATH formula sa IFNA sa Excel 2013 at mas mataas o IF ISNA sa mga naunang bersyon.
KUNGISERROR Oo/Hindi formula
Sa lahat ng naunang halimbawa, KUNG ibinalik ng ISERROR ang resulta ng pangunahing formula kung hindi ito isang error. Gayunpaman, maaari rin itong gumana sa ibang paraan - ibalik ang isang bagay kung error at iba pa kung walang error.
IF(ISERROR( formula (…)), " text_if_error " , " text_if_no_error ")Sa aming sample na dataset, ipagpalagay na hindi ka interesado sa mga eksaktong oras, gusto mo lang malaman kung aling mga kalahok mula sa pangkat A ang kwalipikado at alin ang hindi. Upang gawin ito, gamitin ang MATCH function upang ihambing ang pangalan sa column A laban sa listahan ng mga kwalipikadong kalahok sa column D, at pagkatapos ay ihatid ang mga resulta sa ISERROR. Kung hindi available ang pangalan sa column D (nagbabalik ng error ang MATCH), kunin ang function na IF para ipakita ang "Hindi" o "Hindi kwalipikado." Kung lumabas ang pangalan sa column D (walang error), ibalik ang "Oo" o "Kwalipikado".
=IF(ISERROR(MATCH(A3, $D$3:$D$10, 0)), "No", "Yes" )
Paano bilangin ang bilang ng mga error
Upang makuha ang bilang ng mga error sa isang partikular na column, kailangan mong suriin ang isang hanay, hindi lamang isang cell. Para dito, "ipakain" ang target na hanay sa ISERROR at pilitin ang ibinalik na mga halaga ng Boolean sa mga 1 at 0 gamit ang double unary operator (--). Ang SUM o SUMPRODUCT function ay maaaring magdagdag ng mga numero at maghatid ng huling resulta.
Halimbawa:
=SUM(--ISERROR(C2:C10))
Pakitandaan, ito ay gumagana bilang isang regular na formula lamang sa Excel 365 at Excel 2021, na sumusuporta sa mga dynamic na array. Sa Excel 2019 at mas maaga, ikawkailangang pindutin ang Ctrl + Shift + Enter upang lumikha ng array formula (huwag manu-manong i-type ang mga kulot na bracket, hindi iyon gagana!):
{=SUM(--ISERROR(C2:C10))}
Bilang kahalili, maaari mong gamitin ang SUMPRODUCT function na pinangangasiwaan ang mga arrays nang native, kaya maaaring kumpletuhin ang formula gamit ang karaniwang Enter key sa lahat ng bersyon:
=SUMPRODUCT(--ISERROR(C2:C10))
Pagkakaiba sa pagitan ng ISERROR at IFERROR sa Excel
Parehong ginagamit ang ISERROR at IFERROR function para ma-trap at mahawakan ang mga error sa Excel. Ang pagkakaiba ay ang mga sumusunod:
- Sa purong anyo nito, sinusubok lang ng ISERROR kung error ang value o hindi. Available ito sa lahat ng bersyon ng Excel.
- Idinisenyo ang function ng IFERROR upang sugpuin o itago ang mga error - kapag may nakitang error, nagbabalik ito ng isa pang value na iyong tinukoy. Available ito sa Excel 2007 at mas mataas.
Sa unang tingin, ang IFERROR ay mukhang isang shorthand na alternatibo sa IF ISERROR formula. Gayunpaman, sa mas malapitang pagtingin, mapapansin mo ang pagkakaiba:
- Pinapayagan ka ng IFERROR na tukuyin lamang ang value_if_error . Kung walang error, palaging ibinabalik nito ang resulta ng nasubok na value/formula.
- KUNG ang ISERROR ay nagbibigay ng higit na kakayahang umangkop at hinahayaan kang pangasiwaan ang parehong sitwasyon - ano ang dapat mangyari kung may error at paano kung walang error.
Upang mas mahusay na mailarawan ang punto, isaalang-alang ang mga formula na ito:
=IFERROR(A1, "Calculation error")
=IF(ISERROR(A1), "Calculation error", A1)
Ang dalawang formula na ito ay magkatumbas - parehong nagsusuri ng formula-driven na value sa A1 at bumalik"Error sa pagkalkula" kung ito ay isang error, kung hindi - ibalik ang halaga.
Ngunit paano kung gusto mong magsagawa ng ilang pagkalkula kung ang halaga sa A1 ay hindi isang error? Ang IFERROR function ay hindi magawa iyon. Sa kaso ng IF ISERROR, i-type lamang ang nais na pagkalkula sa huling argumento. Halimbawa:
=IF(ISERROR(A1), "Calculation error", A1*2)
Tulad ng nakikita mo, ang mas mahabang variation na ito ng IFERROR formula, na kadalasang itinuturing na luma na, ay maaari pa ring maging kapaki-pakinabang :)
Mga available na download
Mga halimbawa ng formula ng ISERROR (.xlsx file)