Мазмұны
Оқулық Excel бағдарламасының ISERROR функциясының практикалық қолданыстарын қарастырады және әртүрлі формулаларды қателерге тексеру жолын көрсетеді.
Excel түсінбейтін немесе есептей алмайтын формуланы жазғанда, ол қате туралы хабарды көрсету арқылы назарыңызды мәселеге аударады. ISERROR функциясы қателерді анықтауға және қате табылған кезде балама ұсынуға көмектеседі.
Excel бағдарламасындағы ISERROR функциясы
Excel ISERROR функциясы қателердің барлық түрлерін ұстайды, соның ішінде #CALC!, #DIV/0!, #N/A, #NAME?, #NUM!, #NULL!, #REF!, #VALUE! және #SPILL!. Нәтиже логикалық мән болып табылады: қате анықталса, РАС, әйтпесе ЖАЛҒАН.
Функция Excel 2000 және 2021 және Excel 365 нұсқаларының барлық нұсқаларында қолжетімді.
ISERROR синтаксисі функциясы келесідей қарапайым:
ISERROR(мән)Мұндағы мән қателер үшін тексерілетін ұяшық мәні немесе формула.
Excel ISERROR формуласы
ISERROR формуласын қарапайым түрде жасау үшін қателерді тексергіңіз келетін ұяшыққа сілтеме беріңіз. Мысалы:
=ISERROR(A2)
Кез келген қате табылған жағдайда, сіз ШЫНДЫҚ аласыз. Тексерілген ұяшықта қате болмаса, сіз FALSE аласыз:
Егер ISERROR Excel бағдарламасында формула
Теңшелетін хабарды қайтару немесе орындау үшін қате орын алған кезде әртүрлі есептеулер үшін ISERROR функциясын IF функциясымен бірге пайдаланыңыз. Жалпы формула келесідей көрінеді:
ЕГЕР(ISERROR( формула(…), мәтін_немесе_есептеу_егер_қате, формула())Адам тіліне аударылғанда, ол былай дейді: егер негізгі формула нәтиже берсе қате болса, көрсетілген мәтінді көрсетіңіз немесе басқа есептеуді орындаңыз, әйтпесе формуланың қалыпты нәтижесін қайтарыңыз.
Төмендегі суретте жалпы мәнді санға бөлу Бағасында бірнеше қателерді тудырады. баған:
Барлық әр түрлі қате кодтарын теңшелетін мәтінмен ауыстыру үшін келесі IF ISERROR формуласын қолдануға болады:
=IF(ISERROR(A2/B2), "Unknown", A2/B2)
Excel 2007 және одан кейінгі нұсқаларында бірдей нәтижеге кірістірілген IFERROR функциясының көмегімен қол жеткізуге болады:
=IFERROR(A2/B2, "Unknown")
Ол болуы керек IFERROR формуласы сәл жылдамырақ жұмыс істейтінін атап өтті, себебі ол A2/B2 есептеуін бір рет орындайды.Ал IF ISERROR оны екі рет есептейді - алдымен қатені тудыратынын көру үшін, содан кейін сынақтың ЖАЛҒАН екенін тексеріңіз.
IF ISERROR VLOOKUP формуласы
ISERROR функциясын VLOOKUP функциясымен пайдалану, шын мәнінде, IF IS қатесінің нақты жағдайы болып табылады. Жоғарыда талқыланған ҚАТЕ формуласы. VLOOKUP функциясы іздеу мәнін таба алмағанда немесе кез келген басқа себеппен орындалмаса, сіз осы синтаксисті пайдалану арқылы реттелетін мәтіндік хабарды көрсетесіз:
ЕГЕР(ISERROR(VLOOKUP(…)), " custom_text", VLOOKUP(…))Осы мысал үшін уақыттарды іздеу кестесінен (D3:E10) негізгі кестеге (A3:B15) апарайық. Іздеу мәні (қатысушының аты) ішінде болмасаіздеу кестесі, біз «Білікті емес» қайтарамыз.
=IF(ISERROR(VLOOKUP(A3, $D$3:$E$10, 2, FALSE)), "Not qualified", VLOOKUP(A3, $D$3:$E$10, 2, FALSE))
Кеңес. Басқа қателерді елемей іздеу мәні табылмағанда (#Жоқ қате) теңшелетін мәтінді көрсеткіңіз келсе, Excel 2013 және одан кейінгі нұсқаларында IFNA VLOOKUP формуласын немесе ескі нұсқада IFNA VLOOKUP формуласын пайдаланыңыз. нұсқалары.
Егер ҚАТЕЛІК КӨРСЕТКІШ СӘЙКЕСТІК формуласы
INDEX MATCH комбинациясы (немесе Excel 365 бағдарламасындағы INDEX XMATCH формуласы) көмегімен іздеуді орындаған кезде, дәл сол әдісті пайдалану арқылы кез келген ықтимал қателерді ұстауға және өңдеуге болады - ISERROR функциясы қателерді тексереді және IF кез келген қате орын алған кезде көрсетілген мәтінді көрсетеді.
ЕГЕР(ISERROR(INDEX ( қайтару_баған , SATCH)>, 0)))), " арнайы_мәтін ", INDEX ( қайтару_баған , MATCH ( іздеу_мәні , іздеу_баған , 0)))Іздеу кестесінің бірінші бағанда уақыттары бар делік. VLOOKUP сол жағына қарай алмайтындықтан, D:
=INDEX($D$3:$D$10, MATCH(A3, $E$3:$E$10, 0))
бағанынан уақыттарды шығару үшін INDEX MATCH формуласын қолданамыз, содан кейін оны жоғарыда аталған жалпы формулаға кірістіреміз. ұсталған қателерді қалаған мәтінмен ауыстыру үшін:
=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)))
Ескерту. IF ISERROR VLOOKUP формуласындағы сияқты, тек #N/A қателерін ұстау және формуланың өзімен ықтимал проблемаларды жасырмау маңыздырақ. Ол үшін INDEX MATH формуласын Excel 2013 және одан жоғары нұсқаларында IFNA немесе бұрынғы нұсқалардағы IF ISNA жүйесіне ораңыз.
ЕгерISERROR Иә/Жоқ формуласы
Алдыңғы барлық мысалдарда IF ISERROR негізгі формуланың нәтижесін қайтарды, егер ол қате болмаса. Дегенмен, ол басқа жолмен де жұмыс істей алады - қате болса бір нәрсені қайтарады, қате болмаса басқасын қайтарады.
ЕГЕР(ISERROR( формула (…)), " мәтін_егер_қате " , " мәтін_егер_қате_жоқ ")Біздің үлгі деректер жинағында сізді нақты уақыт қызықтырмайды делік, сіз тек А тобындағы қатысушылардың қайсысы білікті, қайсысы сәйкес емес екенін білгіңіз келеді. Бұл әрекетті орындау үшін A бағанындағы атауды D бағанындағы білікті қатысушылар тізімімен салыстыру үшін MATCH функциясын пайдаланыңыз, содан кейін нәтижелерді ISERROR дегенге қызмет етіңіз. D бағанында атау жоқ болса (МАТЧ қатені қайтарады), "Жоқ" немесе "Білікті емес" көрсету үшін IF функциясын алыңыз. Егер атау D бағанында пайда болса (қате жоқ), «Иә» немесе «Білікті» деп қайтарыңыз.
=IF(ISERROR(MATCH(A3, $D$3:$D$10, 0)), "No", "Yes" )
Қателер санын қалай есептеу керек
Белгілі бір бағандағы қателер санын алу үшін бір ұяшықты емес, ауқымды тексеру керек. Ол үшін мақсатты ауқымды ISERROR мәніне «беріңіз» және қос унарлық оператор (--) арқылы қайтарылған логикалық мәндерді 1 және 0 мәндеріне мәжбүрлеңіз. SUM немесе SUMPRODUCT функциясы сандарды қосып, соңғы нәтижені бере алады.
Мысалы:
=SUM(--ISERROR(C2:C10))
Бұл тек Excel бағдарламасында кәдімгі формула ретінде жұмыс істейтінін ескеріңіз. 365 және динамикалық массивтерді қолдайтын Excel 2021. Excel 2019 және одан бұрынғы нұсқаларында сізЖиым формуласын жасау үшін Ctrl + Shift + Enter пернелер тіркесімін басу керек (бұйра жақшаларды қолмен термеңіз, бұл жұмыс істемейді!):
{=SUM(--ISERROR(C2:C10))}
Баламалы түрде SUMPRODUCT қолданбасын пайдалануға болады. массивтерді табиғи түрде өңдейтін функция, сондықтан формуланы барлық нұсқалардағы әдеттегі Enter пернесі арқылы толтыруға болады:
=SUMPRODUCT(--ISERROR(C2:C10))
Excel бағдарламасындағы ISERROR және IFERROR арасындағы айырмашылық
ISERROR және IFERROR функцияларының екеуі де Excel бағдарламасындағы қателерді ұстау және өңдеу үшін пайдаланылады. Айырмашылық келесідей:
- Таза түрінде ISERROR тек мән қате немесе қате емес екенін тексереді. Ол Excel бағдарламасының барлық нұсқаларында қол жетімді.
- ҚАУАУ функциясы қателерді басу немесе жасыру үшін жасалған – қате табылған кезде ол сіз көрсеткен басқа мәнді қайтарады. Ол Excel 2007 және одан жоғары нұсқаларында қол жетімді.
Бір қарағанда, IFERROR IF ISERROR формуласына стенографиялық балама болып көрінеді. Алайда жақынырақ қарасаңыз, айырмашылықты байқауға болады:
- IFERROR тек қате_егер_мәнді көрсетуге мүмкіндік береді. Қате болмаса, ол әрқашан тексерілген мәннің/формуланың нәтижесін қайтарады.
- ЕГЕР ISERROR көбірек икемділікті қамтамасыз етеді және екі жағдайды да өңдеуге мүмкіндік береді - қате болса не болады және қате болмаса не болады.
Мәселені жақсырақ көрсету үшін мына формулаларды қарастырыңыз:
=IFERROR(A1, "Calculation error")
=IF(ISERROR(A1), "Calculation error", A1)
Бұл екі формула баламалы - екеуі де формулаға негізделген мәнді тексереді A1 және қайтару«Есептеу қатесі» қате болса, әйтпесе – мәнді қайтарыңыз.
Бірақ A1 мәніндегі мән қате болмаса, қандай да бір есептеуді орындағыңыз келсе ше? IFERROR функциясы мұны істей алмайды. ҚАТЕ БОЛСА, соңғы аргументке қажетті есептеуді теріңіз. Мысалы:
=IF(ISERROR(A1), "Calculation error", A1*2)
Көріп отырғаныңыздай, жиі ескірген болып саналатын IFERROR формуласының бұл ұзағырақ нұсқасы әлі де пайдалы болуы мүмкін :)
Қолжетімді жүктеп алулар
ISERROR формуласының мысалдары (.xlsx файлы)