Функција ИСЕРРОР у Екцел-у са примерима формула

  • Деле Ово
Michael Brown

Водич се бави практичним коришћењем функције Екцел ИСЕРРОР и показује како да тестирате различите формуле за грешке.

Када напишете формулу коју Екцел не разуме или не може да израчуна, она вам скреће пажњу на проблем тако што приказује поруку о грешци. Функција ИСЕРРОР може вам помоћи да ухватите грешке и пружите алтернативу када се пронађе грешка.

    функција ИСЕРРОР у Екцел-у

    Екцел функција ИСЕРРОР хвата све врсте грешака, укључујући #ЦАЛЦ!, #ДИВ/0!, #Н/А, #НАМЕ?, #НУМ!, #НУЛЛ!, #РЕФ!, #ВАЛУЕ! и #СПИЛЛ!. Резултат је Боолеан вредност: ТРУЕ ако је грешка откривена, ФАЛСЕ у супротном.

    Функција је доступна у свим верзијама програма Екцел 2000 до 2021 и Екцел 365.

    Синтакса ИСЕРРОР Ова функција је једноставна:

    ИСЕРРОР(валуе)

    Где је валуе вредност ћелије или формула коју треба проверити да ли има грешака.

    Екцел формула ИСЕРРОР

    Да бисте креирали формулу ИСЕРРОР у њеном најједноставнијем облику, наведите референцу на ћелију коју желите да тестирате на грешке. На пример:

    =ISERROR(A2)

    У случају да се пронађе било каква грешка, добићете ТРУЕ. Ако нема грешке у тестираној ћелији, добићете ФАЛСЕ:

    ИФ ИСЕРРОР формулу у Екцел

    Да бисте вратили прилагођену поруку или извршили другачији прорачун када дође до грешке, користите ИСЕРРОР заједно са функцијом ИФ. Генеричка формула изгледа овако:

    ИФ(ИСЕРРОР( формула(…), тект_ор_цалцулатион_иф_еррор, формула())

    Преведено на људски језик, каже: ако је резултат главне формуле у грешци, прикажите наведени текст или покрените други прорачун, у супротном вратите нормалан резултат формуле.

    На слици испод, дељење укупне количине са количином генерише неколико грешака у Цена колона:

    Да бисте заменили све различите кодове грешака прилагођеним текстом, можете користити следећу формулу ИФ ИСЕРРОР:

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

    У Екцел 2007 и новијим верзијама, исти резултат се може постићи уз помоћ уграђене функције ИФЕРРОР:

    =IFERROR(A2/B2, "Unknown")

    Требало би да буде приметио је да формула ИФЕРРОР ради мало брже јер извршава израчунавање А2/Б2 само једном. Док је ИФ ИСЕРРОР израчунава двапут - прво да види да ли генерише грешку, а затим поново да ли је тест ФАЛСЕ.

    ИФ ИСЕРРОР ВЛООКУП формула

    Коришћење ИСЕРРОР са ВЛООКУП је, у ствари, посебан случај ИФ ИС Формула ГРЕШКА о којој је било речи горе. Када функција ВЛООКУП не може да пронађе тражену вредност или не успе из било ког другог разлога, приказујете прилагођену текстуалну поруку користећи ову синтаксу:

    ИФ(ИСЕРРОР(ВЛООКУП(…)), " цустом_тект", ВЛООКУП(…))

    За овај пример, хајде да повучемо времена из табеле за претраживање (Д3:Е10) у главну табелу (А3:Б15). Ако тражена вредност (име учесника) не постоји утабела за претрагу, вратићемо „Није квалификован“.

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

    Савет. Ако желите да прикажете прилагођени текст само када вредност тражења није пронађена (#Н/А грешка) игноришући друге грешке, онда користите формулу ИФНА ВЛООКУП у програму Екцел 2013 и новијим или ИФ ИСНА ВЛООКУП у старијим верзијама верзије.

    ИФ ИСЕРРОР ИНДЕКС МАТЦХ формула

    Када обављате претрагу уз помоћ комбинације ИНДЕКС МАТЦХ (или формуле ИНДЕКС КСМАТЦХ у Екцел 365), можете ухватити и руковати свим могућим грешкама користећи исту технику - функција ИСЕРРОР проверава да ли постоје грешке и ИФ приказује наведени текст када дође до грешке.

    ИФ(ИСЕРРОР(ИНДЕКС ( повратна_колона , МАТЦХ ( вредност_потражи , колона_потражи<2)>, 0)))), " прилагођени_текст ", ИНДЕКС ( повратна_колона , МАТЦХ ( вредност_потражи , колона_потражи , 0)))

    Претпоставимо да табела за тражење има времена у првој колони. Пошто ВЛООКУП не може да гледа улево, користимо формулу ИНДЕКС МАТЦХ да извучемо времена из колоне Д:

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

    А затим је угнездите у горе поменуту генеричку формулу да замените ухваћене грешке било којим текстом који желите:

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

    Напомена. Као и код формуле ИФ ИСЕРРОР ВЛООКУП, има смисла ухватити само грешке #Н/А и не прикривати потенцијалне проблеме са самом формулом. За ово, умотајте своју ИНДЕКС МАТХ формулу у ИФНА у програму Екцел 2013 и новијим или ИФ ИСНА у старијим верзијама.

    ИФИСЕРРОР Да/Не формула

    У свим претходним примерима, ИФ ИСЕРРОР је вратио резултат главне формуле ако није грешка. Међутим, може да функционише и на другачији начин - врати нешто ако грешка и нешто друго ако нема грешке.

    ИФ(ИСЕРРОР( формула (…)), " тект_иф_еррор " , " тект_иф_но_еррор ")

    У нашем узорку скупа података, претпоставимо да вас не занимају тачна времена, само желите да знате који учесници из групе А су квалификовани, а који нису. Да бисте то урадили, користите функцију МАТЦХ да упоредите име у колони А са листом квалификованих учесника у колони Д, а затим уручите резултате ИСЕРРОР. Ако име није доступно у колони Д (МАТЦХ враћа грешку), активирајте функцију ИФ да прикаже „Не“ или „Није квалификован“. Ако се име појави у колони Д (без грешке), вратите „Да“ или „Квалификовано“.

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

    Како пребројати број грешака

    Да бисте добили број грешака у одређеној колони, потребно је да проверите опсег, а не само једну ћелију. За ово, „нахраните“ циљни опсег на ИСЕРРОР и принудите враћене Булове вредности у 1 и 0 користећи двоструки унарни оператор (--). Функција СУМ или СУМПРОДУЦТ може да сабере бројеве и пружи коначни резултат.

    На пример:

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

    Имајте на уму да ово ради као обична формула само у Екцел-у 365 и Екцел 2021, који подржавају динамичке низове. У програму Екцел 2019 и раније, випотребно је да притиснете Цтрл + Схифт + Ентер да бисте креирали формулу низа (не куцајте ручно заграде, то неће радити!):

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

    Алтернативно, можете користити СУМПРОДУЦТ функција која природно обрађује низове, тако да формула може да се заврши уобичајеним тастером Ентер у свим верзијама:

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

    Разлика између ИСЕРРОР и ИФЕРРОР у Екцел-у

    И ИСЕРРОР и ИФЕРРОР функције се користе за хватање и руковање грешкама у Екцел-у. Разлика је у следећем:

    • У свом чистом облику, ИСЕРРОР само тестира да ли је вредност грешка или не. Доступна је у свим верзијама Екцел-а.
    • Функција ИФЕРРОР је дизајнирана да потисне или прикрије грешке – када се пронађе грешка, враћа другу вредност коју наведете. Доступан је у програму Екцел 2007 и новијим верзијама.

    На први поглед, ИФЕРРОР изгледа као скраћена алтернатива формули ИФ ИСЕРРОР. Међутим, ако боље погледате, можете приметити разлику:

    • ИФЕРРОР вам омогућава да наведете само валуе_иф_еррор . Ако нема грешке, увек враћа резултат тестиране вредности/формуле.
    • ИФ ИСЕРРОР пружа већу флексибилност и омогућава вам да решите обе ситуације – шта би требало да се деси ако дође до грешке, а шта ако нема грешке.

    Да бисте боље илустровали поенту, размотрите ове формуле:

    =IFERROR(A1, "Calculation error")

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

    Ове две формуле су еквивалентне – обе проверавају вредност засновану на формули у А1 и повратак"Грешка у прорачуну" ако је грешка, у супротном - вратите вредност.

    Али шта ако желите да извршите неки прорачун ако вредност у А1 није грешка? Функција ИФЕРРОР не може то да уради. У случају ИФ ИСЕРРОР, само унесите жељени прорачун у последњи аргумент. На пример:

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

    Као што видите, ова дужа варијација формуле ИФЕРРОР, која се често сматра застарелом, и даље може бити корисна :)

    Доступна преузимања

    Примери формуле ИСЕРРОР (.клск датотека)

    Мајкл Браун је посвећен технолошки ентузијаста са страшћу за поједностављење сложених процеса помоћу софтверских алата. Са више од деценије искуства у технолошкој индустрији, усавршио је своје вештине у Мицрософт Екцел-у и Оутлоок-у, као и у Гоогле табеле и документима. Мајклов блог посвећен је дељењу свог знања и стручности са другима, пружајући једноставне савете и упутства за побољшање продуктивности и ефикасности. Без обзира да ли сте искусан професионалац или почетник, Мајклов блог нуди вредне увиде и практичне савете како да на најбољи начин искористите ове основне софтверске алате.