Com utilitzar IFERROR a Excel amb exemples de fórmules

  • Comparteix Això
Michael Brown

El tutorial mostra com utilitzar IFERROR a Excel per detectar errors i substituir-los per una cel·la en blanc, un altre valor o un missatge personalitzat. Aprendràs a utilitzar la funció IFERROR amb Vlookup i Index Match, i com es compara amb IF ISERROR i IFNA.

"Dóna'm el lloc on estar-hi i mouré la terra". Arquimedes va dir una vegada. "Dóna'm una fórmula i faré que retorni un error", diria un usuari d'Excel. En aquest tutorial, no mirarem com tornar errors a Excel, més aviat aprendrem a prevenir-los per mantenir nets els vostres fulls de treball i les vostres fórmules transparents.

    Funció Excel IFERROR: sintaxi i usos bàsics

    La funció IFERROR d'Excel està dissenyada per atrapar i gestionar errors en fórmules i càlculs. Més concretament, IFERROR comprova una fórmula i, si s'avalua com a error, retorna un altre valor que especifiqueu; en cas contrari, retorna el resultat de la fórmula.

    La sintaxi de la funció IFERROR d'Excel és la següent:

    IFERROR(valor, valor_si_error)

    On:

    • Valor (obligatori): què comprovar si hi ha errors. Pot ser una fórmula, una expressió, un valor o una referència de cel·la.
    • Value_if_error (obligatori): què cal tornar si es troba un error. Pot ser una cadena buida (cel·la en blanc), missatge de text, valor numèric, una altra fórmula o càlcul.

    Per exemple, en dividir dues columnes de números,pot obtenir un munt d'errors diferents si una de les columnes conté cel·les buides, zeros o text.

    Per evitar que això passi, utilitzeu la funció IFERROR per detectar i gestionar errors. com vulgueu.

    Si hi ha error, aleshores en blanc

    Introduïu una cadena buida ("") a l'argument value_if_error per retornar una cel·la en blanc si es troba un error:

    =IFERROR(A2/B2, "")

    Si hi ha error, mostreu un missatge

    També podeu mostrar el vostre propi missatge en lloc de la notació d'error estàndard d'Excel:

    =IFERROR(A2/B2, "Error in calculation")

    5 coses que hauríeu de saber sobre la funció IFERROR d'Excel

    1. La funció IFERROR a Excel gestiona tots els tipus d'error, inclòs # DIV/0!, #N/A, #NAME?, #NULL!, #NUM!, #REF! i #VALUE!.
    2. Depenent del contingut del valor_si_error argument, IFERROR pot substituir els errors amb el vostre missatge de text personalitzat, número, data o valor lògic, el resultat d'una altra fórmula o una cadena buida (cel·la en blanc).
    3. Si l'argument valor és una cel·la en blanc, es tracta com una cadena buida ('''), però no un error.
    4. IFERROR es va introduir a Excel 2007 i està disponible en totes les versions posteriors d'Excel 2010, Excel 2013, Excel 2016, Excel 2019, Excel 2021 i Excel 365.
    5. Per capturar errors a Excel 2003 i versions anteriors, utilitzeu la funció ISERROR en combinació amb SI, tal com es mostra en aquest exemple.

    Exemples de fórmules SIERROR

    Els exemples següentsmostrar com utilitzar IFERROR a Excel en combinació amb altres funcions per realitzar tasques més complexes.

    Excel IFERROR amb Vlookup

    Un dels usos més habituals de la funció IFERROR és dir als usuaris que el valor que estan cercant no existeix al conjunt de dades. Per a això, emboliqueu una fórmula BUSCARV a IFERROR com aquesta:

    IFERROR(VLOOKUP(),"No s'ha trobat")

    Si el valor de cerca no es troba a la taula que esteu buscant , una fórmula normal de Vlookup retornaria l'error #N/A:

    Per a la tranquil·litat dels usuaris, embolcalla VLOOKUP a IFERROR i mostra una imatge més informativa i fàcil d'utilitzar. missatge:

    =IFERROR(VLOOKUP(A2, 'Lookup table'!$A$2:$B$4, 2,FALSE), "Not found")

    La captura de pantalla següent mostra aquesta fórmula Iferror a Excel:

    Si només voleu atrapar #N Errors /A però no tots els errors, utilitzeu la funció IFNA en comptes de IFERROR.

    Per obtenir més exemples de fórmules IFERROR VLOOKUP d'Excel, consulteu aquests tutorials:

    • Iferror amb Vlookup per atrapar i gestionar els errors
    • Com obtenir l'enèsima ocurrència del valor de cerca
    • Com obtenir totes les ocurrències del valor de cerca

    Funcions IFERROR imbricades per fer Vlookups seqüencials a Excel

    En situacions en què necessiteu realitzar diverses Vlookups segons si la Vlookup anterior ha tingut èxit o ha fallat, podeu anidar dos o més IFERROR funcionen entre si.

    Suposant que teniu diversos informes de vendes de les sucursals regionals del vostreempresa i voleu obtenir una quantitat per a un identificador de comanda determinat. Amb A2 com a valor de cerca al full actual i A2:B5 com a rang de cerca en 3 fulls de cerca (informe 1, informe 2 i informe 3), la fórmula és la següent:

    =IFERROR(VLOOKUP(A2,'Report 1'!A2:B5,2,0),IFERROR(VLOOKUP(A2,'Report 2'!A2:B5,2,0),IFERROR(VLOOKUP(A2,'Report 3'!A2:B5,2,0),"not found")))

    El resultat serà semblant a això:

    Per obtenir una explicació detallada de la lògica de la fórmula, vegeu Com fer consultes virtuals seqüencials a Excel.

    IFERROR a les fórmules de matriu

    Com probablement sabeu, les fórmules de matriu d'Excel estan destinades a realitzar diversos càlculs dins d'una sola fórmula. Si proporcioneu una fórmula o expressió de matriu que resulta en una matriu a l'argument valor de la funció IFERROR, retornaria una matriu de valors per a cada cel·la de l'interval especificat. L'exemple següent mostra els detalls.

    Diguem que teniu Total a la columna B i Preu a la columna C i voleu calcular Quantitat total . Això es pot fer utilitzant la següent fórmula de matriu, , que divideix cada cel·la de l'interval B2:B4 per la cel·la corresponent de l'interval C2:C4 i després suma els resultats:

    =SUM($B$2:$B$4/$C$2:$C$4)

    La fórmula funciona bé sempre que l'interval del divisor no tingui zeros o cel·les buides. Si hi ha almenys un valor 0 o una cel·la en blanc, el #DIV/0! es retorna l'error:

    Per corregir aquest error, simplement feu la divisió dins de la funció IFERROR:

    =SUM(IFERROR($B$2:$B$4/$C$2:$C$4,0))

    Què fa la fórmulaés dividir un valor de la columna B per un valor de la columna C a cada fila (100/2, 200/5 i 0/0) i retornar la matriu de resultats {50; 40; #DIV/0!}. La funció IFERROR captura tots els #DIV/0! errors i els substitueix per zeros. I després, la funció SUMA suma els valors de la matriu resultant {50; 40; 0} i mostra el resultat final (50+40=90).

    Nota. Recordeu que les fórmules de matriu s'han de completar prement la drecera Ctrl + Maj + Intro.

    IFERROR vs. IF ISERROR

    Ara que ja sabeu el fàcil que és utilitzar la funció IFERROR a Excel, potser us preguntareu per què algunes persones encara s'inclinen a utilitzar la combinació IF ISERROR. Té algun avantatge en comparació amb IFERROR? Cap. En els dolents vells temps d'Excel 2003 i inferior quan IFERROR no existia, IF ISERROR era l'única manera possible d'atrapar errors. A Excel 2007 i posteriors, és una manera una mica més complexa d'aconseguir el mateix resultat.

    Per exemple, per detectar errors de Vlookup, podeu utilitzar qualsevol de les fórmules següents.

    A Excel 2007 - Excel 2016:

    IFERROR(VLOOKUP( ), "No s'ha trobat")

    En totes les versions d'Excel:

    IF(ISERROR(VLOOKUP(…)), "No s'ha trobat ", BUSCARV(…))

    Observeu que a la fórmula BUSCARV SI ÉS ERROR, heu de cercar dues vegades. En anglès senzill, la fórmula es pot llegir de la següent manera: Si Vlookup resulta en error, retorneu "Not found", en cas contrari, visualitzeu el resultat Vlookup.

    I aquí hi ha un real-exemple de vida d'una fórmula d'Excel If Iserror Vlookup:

    =IF(ISERROR(VLOOKUP(D2, A2:B5,2,FALSE)),"Not found", VLOOKUP(D2, A2:B5,2,FALSE ))

    Per obtenir més informació, vegeu Ús de la funció ISERROR a Excel.

    IFERROR vs. IFNA

    Introduït amb Excel 2013, IFNA és una funció més per comprovar una fórmula per detectar errors. La seva sintaxi és similar a la de IFERROR:

    IFNA(value, value_if_na)

    En quina manera és diferent IFNA de IFERROR? La funció IFNA captura només errors #N/A mentre que IFERROR gestiona tots els tipus d'error.

    En quines situacions és possible que vulgueu utilitzar IFNA? Quan no és prudent dissimular tots els errors. Per exemple, quan treballeu amb dades importants o sensibles, és possible que vulgueu rebre una alerta sobre possibles errors en el vostre conjunt de dades, i els missatges d'error estàndard d'Excel amb el símbol "#" podrien ser indicadors visuals vívids.

    Vegem-ho. com podeu crear una fórmula que mostri el missatge "No s'ha trobat" en lloc de l'error N/A, que apareix quan el valor de cerca no està present al conjunt de dades, però us crida l'atenció altres errors d'Excel.

    Suposant que voleu treure Qty. de la taula de cerca a la taula resum, tal com es mostra a la captura de pantalla següent. L'ús de la fórmula Excel Iferror Vlookup produiria un resultat estèticament agradable, que és tècnicament incorrecte perquè Llimones existeixen a la taula de cerca:

    Per capturar # N/A, però mostreu l'error #DIV/0, utilitzeu la funció IFNA a Excel 2013 i Excel2016:

    =IFNA(VLOOKUP(F3,$A$3:$D$6,4,FALSE), "Not found")

    O, la combinació IF ISNA a Excel 2010 i versions anteriors:

    =IF(ISNA(VLOOKUP(F3,$A$3:$D$6,4,FALSE)),"Not found", VLOOKUP(F3,$A$3:$D$6,4,FALSE))

    La sintaxi de IFNA VLOOKUP i IF ISNA Les fórmules de BUSCAR V són similars a les de BUSCAR V IFERROR i BUSCAR V IF ÉS ERROR comentada anteriorment.

    Com es mostra a la captura de pantalla següent, la fórmula de cerca V d'Ifna retorna "No trobat" només per a l'element que no està present a la taula de cerca. ( Pressecs ). Per a Llimones , mostra #DIV/0! indicant que la nostra taula de cerca conté un error de divisió per zero:

    Per a més detalls, vegeu Ús de la funció IFNA a Excel.

    Pràctiques recomanades per utilitzar IFERROR a Excel

    A hores d'ara ja sabeu que la funció IFERROR és la manera més senzilla de detectar errors a Excel i emmascarar-los amb cel·les en blanc, valors zero o missatges personalitzats. Tanmateix, això no vol dir que hàgiu d'embolicar totes i cadascuna de les fórmules amb la gestió d'errors. Les recomanacions senzilles següents us poden ajudar a mantenir l'equilibri.

    1. No agafeu errors sense un motiu.
    2. Embolcalleu la part més petita possible d'una fórmula a IFERROR.
    3. Per gestionar només errors específics, utilitzeu una funció de gestió d'errors amb un abast més reduït:
      • IFNA o IF ISNA per detectar només errors #N/A.
      • ISERR per detectar tots els errors excepte els #N/A.

    Així és com s'utilitza la funció IFERROR a Excel per atrapar i gestionar errors. Per veure més de prop les fórmules que s'hi discuteixentutorial, us convidem a descarregar el nostre exemple de llibre de treball d'Excel IFERROR. Us agraeixo la lectura i espero veure-us al nostre blog la setmana vinent.

    Michael Brown és un entusiasta de la tecnologia dedicat amb una passió per simplificar processos complexos mitjançant eines de programari. Amb més d'una dècada d'experiència en la indústria tecnològica, ha perfeccionat les seves habilitats en Microsoft Excel i Outlook, així com en Google Sheets i Docs. El bloc de Michael es dedica a compartir els seus coneixements i experiència amb altres persones, oferint consells i tutorials fàcils de seguir per millorar la productivitat i l'eficiència. Tant si sou un professional experimentat com si sou un principiant, el bloc de Michael ofereix valuoses idees i consells pràctics per treure el màxim profit d'aquestes eines de programari essencials.