Com utilitzar la funció IFNA a Excel amb exemples

  • Comparteix Això
Michael Brown

Rebreu molts errors #N/A als vostres fulls de treball i teniu curiositat per saber si hi ha una manera de mostrar un text personalitzat? La fórmula IFNA és la solució que necessiteu.

Quan una fórmula d'Excel no pot identificar o trobar alguna cosa, genera l'error #N/A. Per detectar aquest error i substituir-lo per un missatge fàcil d'utilitzar, podeu utilitzar la funció IFNA. En altres paraules, #N/A és la manera d'Excel de dir que el valor que busqueu no està present al conjunt de dades de referència. IFNA és la vostra manera de detectar i gestionar aquest error.

    Funció IFNA a Excel

    La funció IFNA d'Excel està pensada per detectar i gestionar errors #N/A. Si una fórmula s'avalua com a #N/A, IFNA atrapa aquest error i el substitueix amb un valor personalitzat que especifiqueu; en cas contrari, retorna un resultat normal de la fórmula.

    Sintaxi IFNA

    La sintaxi de la funció IFNA és la següent:

    IFNA(valor, valor_si_na)

    On:

    Valor (obligatori): la fórmula, el valor o la referència per comprovar si hi ha un error #N/A.

    Value_if_na (obligatori): el valor per tornar si es detecta un error #N/A.

    Notes d'ús

    • La funció IFNA només gestiona #N/A sense suprimir cap altre error.
    • Si l'argument valor és una fórmula de matriu , IFNA retorna una matriu de resultats, un per cel·la, tal com es mostra en aquest exemple.

    Disponibilitat d'IFNA

    La funció IFNA es va introduir aExcel 2013 i està disponible en totes les versions posteriors, incloses Excel 2016, Excel 2019, Excel 2021 i Microsoft 365.

    En versions anteriors, podeu detectar errors #N/A utilitzant les funcions IF i ISNA juntes.

    Com utilitzar la funció IFNA a Excel

    Per utilitzar efectivament IFNA a Excel, seguiu aquest enfocament genèric:

    1. En el primer argument ( valor ), poseu una fórmula afectada per l'error #N/A.
    2. Al segon argument ( valor_si_na ), escriviu el text que voleu tornar en lloc de la notació d'error estàndard. Per tornar una cel·la buida quan no es trobi res, proporcioneu una cadena buida (""").

    Per retornar text personalitzat , la fórmula genèrica és:

    IFNA( fórmula(), " text personalitzat")

    Per retornar una cel·la en blanc , la fórmula genèrica és:

    IFNA( fórmula(), "")

    Anem a veure com funciona amb un exemple senzill. A la taula següent, suposem que voleu saber com es classifica una puntuació d'un estudiant determinat entre d'altres. Com que les dades s'ordenen per la columna Puntuació de major a menor, la classificació coincidirà amb la posició relativa de l'estudiant a la taula. I per obtenir la posició, podeu utilitzar la funció MATCH en la seva forma més senzilla:

    =MATCH(E1, A2:A10, 0)

    Com que el valor de cerca (Neal) no està disponible a la matriu de cerca (A2:A10), es produeix un error #N/A.

    En trobar-se amb aquest error, els usuaris sense experiència poden pensar que hi ha alguna cosa malament amb elfórmula i tu, com a creador del llibre de treball, rebràs moltes preguntes. Per evitar-ho, podeu indicar explícitament que la fórmula és correcta, simplement no pot trobar el valor que es demana que cerqui. Per tant, niu la fórmula MATCH al primer argument d'IFNA i, al segon argument, escriviu el vostre text personalitzat, "No s'ha trobat" en el nostre cas:

    =IFNA(MATCH(E1, A2:A10, 0), "Not found")

    Ara, en lloc de la notació d'error estàndard, el vostre propi text es mostra en una cel·la, informant els usuaris que el valor de cerca no està present al conjunt de dades:

    Com utilitzar IFNA amb VLOOKUP

    La majoria de vegades l'error #N/A es produeix a les funcions que cerquen alguna cosa com ara BUSCAR V, BUSCAR, CERCA i COINCORDAR. Els exemples següents cobreixen alguns casos d'ús típics.

    Exemple 1. Fórmula bàsica IFNA VLOOKUP

    Per atrapar els errors #N/A que es produeixen quan VLOOKUP no pot trobar una coincidència, comproveu-ne el resultat utilitzant IFNA i especifiqueu el valor que es mostrarà en lloc de l'error. La pràctica habitual és embolicar la funció IFNA al voltant de la vostra fórmula BUSCARV existent utilitzant aquesta sintaxi:

    IFNA(LOOKUP(), " el vostre text")

    A la nostra taula de mostra, suposeu que voleu recuperar una puntuació d'un alumne en concret (E1). Per a això, estàs utilitzant aquesta fórmula clàssica de BUSCAR VOLTA:

    =VLOOKUP(E1, A2:B10, 2, FALSE)

    El problema és que Neal no va fer l'examen, per tant, el seu nom no apareix a la llista i, òbviament, BUSCARV no pot trobar una coincidència.

    Per amagar l'error, nosaltresembolcalla VLOOKUP a IFNA així:

    =IFNA(VLOOKUP(E1, A2:B10, 2, FALSE), "Did not take the exam")

    Ara, el resultat no sembla tan intimidatori per a l'usuari i és molt més informatiu:

    Exemple 2. IFNA VLOOKUP per buscar a través de diversos fulls

    La funció IFNA també és útil per realitzar les anomenades cerques seqüencials o encadenades en diversos fulls o llibres de treball diferents. La idea és que niu unes quantes fórmules IFNA(LOOKUP(…)) diferents una en una altra d'aquesta manera:

    IFNA(LOOKUP(…), IFNA(VLOOKUP(…), IFNA(VLOOKUP(…), "No trobat")))

    Si una VLOOKUP primària no troba res, la seva funció IFNA executa la següent VLOOKUP fins que es trobi el valor desitjat. Si fallen totes les cerques, la fórmula retornarà el text especificat.

    Suposant que teniu les puntuacions de diferents classes enumerades en diferents fulls (anomenats Classe A , Classe B i Classe C ). El vostre objectiu és obtenir la puntuació d'un estudiant concret, el nom del qual s'introdueix a la cel·la B1 del vostre full de treball actual. Per complir amb la tasca, feu servir aquesta fórmula:

    =IFNA(VLOOKUP(B1, 'Class A'!A2:B5, 2, FALSE), IFNA(VLOOKUP(B1, 'Class B'!A2:B5, 2, FALSE), IFNA(VLOOKUP(B1, 'Class C'!A2:B5, 2, FALSE), "Not found")))

    La fórmula cerca seqüencialment el nom especificat en tres fulls diferents en l'ordre en què s'hi aniden BUSCAR V i aporta la primera coincidència trobada:

    Exemple 3. IFNA amb INDEX MATCH

    De manera similar, IFNA pot detectar errors #N/A generats per altres funcions de cerca. Com a exemple, utilitzem-lo juntament amb l'INDEX MATCHfórmula:

    =IFNA(INDEX(B2:B10, MATCH(E1, A2:A10, 0)), "Not found")

    L'essència de la fórmula és la mateixa que en tots els exemples anteriors: INDEX MATCH fa una cerca i IFNA avalua el resultat i detecta un error #N/A si el no es troba el valor de referència.

    IFNA per tornar múltiples resultats

    En cas que la funció interna (és a dir, la fórmula col·locada al valor argument) retorna diversos valors, IFNA provarà cada valor retornat individualment i sortirà una matriu de resultats. Per exemple:

    =IFNA(VLOOKUP(D2:D4, A2:B10, 2, FALSE), "Not found")

    A Dynamic Array Excel (Microsoft 365 i Excel 2021), una fórmula normal a la cel·la superior (E2) vessa tots els resultats a les cel·les veïnes automàticament (en termes d'Excel, s'anomena interval de vessament).

    En les versions predinàmiques (Excel 2019 i anteriors), es pot aconseguir un efecte similar utilitzant una matriu de diverses cel·les. fórmula, que es completa amb la drecera Ctrl + Maj + Retorn.

    Quina diferència hi ha entre IFNA i IFERROR?

    Depenent de la causa arrel de la problema, una fórmula d'Excel pot provocar diferents errors com ara #N/A, #NAME, #VALUE, #REF, #DIV/0, #NUM i altres. La funció IFERROR detecta tots aquests errors mentre que IFNA només es limita a #N/A. Quin és millor triar? Això depèn de la situació.

    Si voleu suprimir qualsevol tipus d'error , feu servir la funció IFERROR. És especialment útil en càlculs complexos quan una fórmulainclou diverses funcions que poden generar diferents errors.

    Amb funcions de cerca , és millor que utilitzeu IFNA, ja que només mostra un resultat personalitzat quan no es troba un valor de cerca i no amaga el subjacent. problemes amb la fórmula en si.

    Per il·lustrar la diferència, recuperem la nostra fórmula bàsica IFNA VLOOKUP i "accidentalment" escrivim malament el nom de la funció (VLOKUP en lloc de VLOOKUP).

    =IFNA(VLOKUP(E1, A2:B10, 2, FALSE), "Did not take the exam")

    IFNA no suprimeix aquest error, de manera que podeu veure clarament que hi ha alguna cosa malament amb un dels noms de funció:

    Ara, vegem què passa si feu servir IFERROR:

    =IFERROR(VLOKUP(E1, A2:B10, 2, FALSE), "Did not take the exam")

    Hmm... diu que l'Olivia no va fer l'examen, que no és cert! Això es deu al fet que la funció IFERROR atrapa el #NAME? error i retorna el text personalitzat. En aquesta situació, no només retorna informació incorrecta, sinó que també enfosquia el problema amb la fórmula.

    Així és com s'utilitza la fórmula IFNA a Excel. Us agraeixo la lectura i espero veure-us al nostre blog la setmana vinent!

    Descàrregues disponibles

    Excels de fórmules IFNA d'Excel (fitxer .xlsx)

    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.