Taula de continguts
En aquest tutorial, veurem com utilitzar ISERROR amb VLOOKUP a Excel per gestionar tot tipus d'errors de manera productiva.
VLOOKUP és una de les funcions d'Excel més confuses afectades. amb molts temes. Sigui quina sigui la taula on estigueu mirant, els errors #N/A són habituals, amb #NAME i #VALUE també apareixent de tant en tant. L'ús de VLOOKUP amb ISERROR us pot ajudar a detectar tots els possibles errors i gestionar-los de la manera més adequada a la vostra situació.
Per què VLOOKUP dóna un error?
El més L'error comú a les fórmules de BUSCAR V és #N/A que es produeix quan no es troba un valor de cerca. Això pot succeir per diferents motius:
- El valor de cerca no existeix a la matriu de cerca.
- El valor de cerca està mal escrit.
- Hi ha un missatge inicial o espais al final del valor de cerca o de la columna de cerca.
- La columna de cerca no és la columna més a l'esquerra de la matriu de la taula.
A més, podeu trobar un #VALUE ! error, p. ex. quan el valor de cerca conté més de 255 caràcters. En cas que hi hagi un error ortogràfic al nom de la funció, apareixerà un error #NAME? .
Per a una referència completa, consulteu la nostra publicació anterior sobre Per què la BUSCAR VOLTA d'Excel no funciona.
Fórmula IF ISERROR VLOOKUP per substituir els errors per text personalitzat
Per dissimular tots els possibles errors que es poden activar per VLOOKUP, podeu col·locar-lo dins de la fórmula IF ISERRORaixí:
IF(ISERROR(VLOOKUP(…)), " text_if_error", VLOOKUP(…))A tall d'exemple, traguem els noms de les assignatures en què els estudiants de Proves fallides del grup A:
=VLOOKUP(A3, $D$3:$E$9, 2, FALSE)
Com a resultat, obteniu un munt d'errors #N/A, que poden donar la impressió que la fórmula està corrupta.
En realitat, aquests errors només indiquen que alguns dels valors de cerca (A3:A14) no es troben a la llista de cerca (D3:D9). Per transmetre clarament aquesta idea, niu la fórmula BUSCAR V a la construcció SI ÉS ERROR:
=IF(ISERROR(VLOOKUP(A3, $D$3:$E$9, 2, FALSE)), "No", VLOOKUP(A3, $D$3:$E$9, 2, FALSE))
Això detectarà errors i retornarà el vostre missatge de text personalitzat:
Consells i notes:
- El principal avantatge d'aquesta fórmula és que funciona bé en totes les versions d'Excel 2000 a Excel 365. En les versions modernes, més senzill i hi ha alternatives més compactes disponibles.
- La funció ISERROR detecta absolutament tots els errors , com ara #N/A, #NAME, #VALUE, etc. En cas que vulgueu mostrar un personalitzat missatge només quan no es troba cap valor de cerca (error #N/A), utilitzeu IF ISNA VLOOKUP (en totes les versions) o IFNA VLOOKUP (a Excel 2013 i posterior).
ISERROR VLOOKUP per retorna cel·la en blanc si error
Per tenir una cel·la en blanc quan es produeix un error, obteniu la vostra fórmula per retornar una cadena buida ("") en lloc d'un text personalitzat:
IF(ISERROR(VLOOKUP(…) ), "", BUSCARV(…))En el nostre cas, la fórmula pren aquesta forma:
=IF(ISERROR(VLOOKUP(A3, $D$3:$E$9, 2, FALSE)), "", VLOOKUP(A3, $D$3:$E$9, 2, FALSE))
Elel resultat és exactament el que s'esperava: una cel·la en blanc si el nom de l'estudiant no es troba a la taula de cerca.
Consell. De la mateixa manera, podeu substituir els errors de VLOOKUP per zeros, guions o qualsevol altre caràcter que us agradi. Només cal que utilitzeu el caràcter desitjat en lloc d'una cadena buida.
SI ÉS ERROR BUSCAR V Fórmula Sí/No
En algunes situacions, és possible que estigueu buscant alguna cosa, però en comptes de treure les coincidències només voleu tornar Sí (o algun altre text si el es troba el valor de cerca) i No (si no es troba el valor de cerca). Per fer-ho, podeu utilitzar aquesta fórmula genèrica:
IF(ISERROR(VLOOKUP(…)), " text_if_not_found ", " text_if_found ")Al nostre conjunt de dades de mostra, suposem que voleu saber quins estudiants han suspès una prova i quins no. Per aconseguir-ho, utilitzeu la ja coneguda fórmula ISERROR VLOOKUP a la prova lògica de SI i digueu-li que emeti "No" si no es troba el valor (ISERROR VLOOKUP retorna TRUE), "Sí" si es troba (ISERROR VLOOKUP retorna FALSE):
=IF(ISERROR(VLOOKUP(A3, $D$3:$E$9, 2, FALSE)), "No", "Yes")
Alternatives ISERROR VLOOKUP
La combinació IF ISERROR és la tècnica provada més antiga per a Vlookup sense errors a Excel. Amb el temps, les noves funcions van evolucionar, proporcionant maneres més fàcils de realitzar la mateixa tasca. A continuació, parlarem d'altres possibles solucions i quan és millor aplicar-les.
IFERROR VLOOKUP
Disponible a Excel 2007 isuperior
A partir de la versió 2007, Excel té una funció especial, anomenada IFERROR, per comprovar si hi ha errors en una fórmula i retornar el vostre propi text (o executar una fórmula alternativa) si es detecta algun error.
IFERROR(BUSCARV(…), " text_if_error ")La fórmula de la vida real és la següent:
=IFERROR(VLOOKUP(A3, $D$3:$E$9, 2, FALSE), "No")
A primera vista, sembla un anàleg més curt de la fórmula IF ISERROR VLOOKUP. Tanmateix, hi ha una diferència essencial:
- IFERROR VLOOKUP suposa que sempre voleu el resultat de VLOOKUP si no és un error.
- IF ISERROR VLOOKUP us permet especificar què voleu retorna si hi ha un error i què passa si no hi ha cap error.
Per obtenir més informació, vegeu Ús de IFERROR amb VLOOKUP a Excel.
IF ISNA VLOOKUP
Funciona a Excel 2000 i posteriors
En una situació en què només voleu atrapar #N/A sense detectar cap altre error, la funció ISNA és útil. La sintaxi és la mateixa que la de IF ISERROR VLOOKUP:
IF(ISNA(VLOOKUP(…)), " text_if_error ", VLOOKUP(…))Però en determinades circumstàncies, això aparentment una fórmula idèntica pot produir resultats diferents:
=IF(ISNA(VLOOKUP(A3, $D$3:$E$9, 2, FALSE)), "No", VLOOKUP(A3, $D$3:$E$9, 2, FALSE))
A la imatge següent, la cel·la A13 conté molts espais al final perquè la longitud total del valor de cerca supera els 255 caràcters. Com a resultat, la fórmula activa un #VALOR! error, cridant la vostra atenció sobre aquesta cel·la i animant-vos a investigar els motius. ISERRORVLOOKUP retornaria "No" en aquest cas, cosa que només enfosquiria el problema i donaria un resultat absolutament incorrecte.
Quan utilitzar:
Aquesta fórmula funciona molt bé en una situació en què només voleu mostrar text quan no es troba un valor de cerca i no voleu emmascarar els problemes subjacents amb la pròpia fórmula BUSCAR V, p. quan el nom de la funció està escrit malament (#NAME?) o no s'especifica el camí complet al llibre de cerca (#VALUE!).
Per obtenir més informació, vegeu la funció ISNA a Excel amb exemples de fórmules.
IFNA VLOOKUP
Disponible a Excel 2013 i versions posteriors
És un substitut modern de la combinació IF ISNA que us permet gestionar els errors #N/A en una manera més fàcil.
IFNA(VLOOKUP(…), " text_if_error ")Aquí hi ha un equivalent abreviat de la nostra fórmula IF ISNA VLOOKUP:
=IFNA(VLOOKUP(A3, $D$3:$E$9, 2, FALSE), "No")
Quan s'ha d'utilitzar:
És una solució ideal per atrapar i gestionar errors #N/A a les versions modernes d'Excel (2013 - 365).
Per obtenir més informació, vegeu la funció Excel IFNA.
XLOOKUP
Admet Excel 2021 i Excel 365
A causa de la seva funcionalitat incorporada "si error" , la funció XLOOKUP és la manera més fàcil de cercar sense errors #N/A a Excel. Simplement, escriviu el vostre text fàcil d'utilitzar al quart argument opcional anomenat if_not_found .
Per exemple:
=XLOOKUP(A3, $D$3:$D$9, $E$3:$E$9, "No")
Limitació: només detecta errors #N/A, ignorant-losaltres tipus.
Per obtenir més informació, fes una ullada a la funció XLOOKUP a Excel.
Com veieu, Excel ofereix un munt d'opcions diferents per solucionar els errors de VLOOKUP. Amb sort, aquest tutorial ha aportat llum sobre com utilitzar-los de manera eficaç. Us agraeixo la lectura i espero veure-us al nostre blog la setmana vinent!
Descàrregues disponibles
ISERROR amb exemples de VLOOKUP (fitxer .xlsx)