BlogExcel

Fórmula de búsqueda con la condición If

El tutorial muestra cómo combinar VLOOKUP y IF funcionan juntos en v-lookup con la condición if en Excel. También aprenderá a usar fórmulas IF ISNA VLOOKUP para reemplazar los errores #N/A con su propio texto, cero o celda vacía.

Si bien las funciones BUSCARV e IF son útiles por sí solas, juntas brindan experiencias aún más valiosas. Este tutorial asume que recuerda bien la sintaxis de las dos funciones; de lo contrario, puede mejorar su conocimiento siguiendo los enlaces anteriores.

Buscar con sentencia If: devuelve verdadero/falso, sí/no, etc.

Uno de los escenarios más comunes cuando combina If y Vlookup juntos es comparar el valor devuelto por Vlookup con un valor de muestra y devolver sí No o Verdadero Falso Como resultado.

En la mayoría de los casos, la siguiente fórmula genérica funcionaría bien:

SI(BUSCAR(…) = valorVERDADERO FALSO)

Traducido al inglés simple, la fórmula le dice a Excel que regrese Verdadero si Vlookup es verdadero (es decir, igual al valor especificado). Si Vlookup es falso (no igual al valor especificado), la fórmula devuelve Falso.

A continuación, encontrará algunos usos reales de esta fórmula IF Vlookup.

Ejemplo 1. Buscar un valor específico

Supongamos que tiene una lista de artículos en la columna A y la cantidad en la columna B. Está creando un tablero para sus usuarios y necesita una fórmula para verificar la cantidad de un artículo en E1 e informar al usuario si el artículo está en stock. o agotado.

Obtenga la cantidad con un Vlookup regular con la fórmula de coincidencia exacta como esta:

=VLOOKUP(E1,$A$2:$B$10,2,FALSE)

A continuación, escriba una declaración IF que compare el resultado de Vlookup con cero y devuelva «No» si es igual a 0, «Sí» de lo contrario:

=IF(VLOOKUP(E1,$A$2:$B$10,2,FALSE)=0,"No","Yes")
Si la fórmula Vlookup devolverá Sí o No según el resultado de Vlookup

En lugar de sí Nopuedes volver VERDADERO FALSO o En stock/Fuera de stock o cualquier otra de las dos opciones. P.ej:

=IF(VLOOKUP(E1,$A$2:$B$10,2)=0,"Sold out","In stock")

También puede comparar el valor devuelto por Vlookup con la muestra texto. En este caso, asegúrese de encerrar una cadena de texto entre comillas, como esta:

=IF(VLOOKUP(E1,$A$2:$B$10,2)="sample text",TRUE,FALSE)

Ejemplo 2. Compara el resultado de Vlookup con otra celda

Otro ejemplo típico de Vlookup con una condición If en Excel es comparar el resultado de Vlookup con un valor en otra celda. Por ejemplo, podemos comprobar si es mayor o igual que un número de la celda G2:

=IF(VLOOKUP(E1,$A$2:$B$10,2)>=G2,"Yes!","No")

Y aquí está nuestra fórmula If con Vlookup en acción:
Si la fórmula con Vlookup para comparar el resultado de vlookup con otra celda

De manera similar, puede usar cualquier otro operador lógico junto con una referencia de celda en su fórmula Excel If Vlookup.

Ejemplo 3. Buscar valores en una lista más corta

Para comparar cada celda en la columna de destino con otra lista y devolver Verdadero o si se encuentra una coincidencia, Falso o No de lo contrario, use esta fórmula genérica IF ISNA VLOOKUP:

SI(ESNA(BUSCAR V (…)), «No», «Sí»)

Si Vlookup da como resultado el error #N/A, la fórmula devuelve «No», lo que significa que el valor de búsqueda no se encuentra en la lista de búsqueda. Si se encuentra una coincidencia, se devuelve «Sí». P.ej:

=IF(ISNA(VLOOKUP(A2,$D$2:$D$4,1,FALSE)),"No","Yes")
Busca valores en una lista más corta y devuelve Sí o No.

Si su lógica comercial requiere resultados opuestos, simplemente cambie «Sí» y «No» para invertir la lógica de la fórmula:

=IF(ISNA(VLOOKUP(A2,$D$2:$D$4,1,FALSE)),"Yes","No")
Fórmula IF ISNA VLOOKUP para buscar valores en una lista más corta y devolver Sí o No.

Fórmula Excel If Vlookup para realizar varios cálculos

Además de mostrar sus propios mensajes de texto, la función If con Vlookup puede realizar varios cálculos según los criterios que especifique.

Llevando nuestro ejemplo más allá, calculemos la comisión de cierto vendedor (F1) en función de su efectividad: 20% de comisión para aquellos que ganaron $200 o más, 10% para todos los demás.

Para ello, comprueba si el valor devuelto por Vlookup es mayor o igual a 200, y si lo es, multiplícalo por 20%, en caso contrario por 10%:

=IF(VLOOKUP(F1,$A$2:$C$10,3,FALSE )>=200, VLOOKUP(F1,$A$2:$C$10,3,FALSE)*20%, VLOOKUP(F1,$A$2:$C$10,3,FALSE)*10%)

Donde A2:A10 son nombres de vendedores y C2:C10 son ventas.
Fórmula Excel If Vlookup para realizar varios cálculos

SI ES BUSCARV para ocultar errores #N/A

Si la función BUSCARV no puede encontrar un valor específico, muestra un error #N/A. Para detectar ese error y reemplazarlo con su propio texto, incruste una fórmula Vlookup en la prueba lógica de la función IF de esta manera:

IF(ISNA(BÚSQUEDA(…)), “No encontrado”, BUSCARV(…))

Por supuesto, puede ingresar cualquier texto que desee en lugar de «No encontrado».

Suponga que tiene una lista de nombres de vendedores en una columna y cantidades de ventas en otra columna. Su tarea es dibujar un número correspondiente al nombre que el usuario ingresa en F1. Si no se encuentra el nombre, mostrar un mensaje indicándolo.

Con los nombres en A2:A10 y las cantidades en C2:C10, la tarea se puede realizar con la siguiente fórmula If Vlookup:

=IF(ISNA(VLOOKUP(F1,$A$2:$C$10,3,FALSE)), "Not found", VLOOKUP(F1,$A$2:$C$10,3,FALSE))

Si se encuentra el nombre, se devuelve un monto de venta apropiado:
La fórmula IF ISNA VLOOKUP recupera un valor coincidente

Si no se encuentra el valor de búsqueda, Extraviado aparece el mensaje en lugar del error #N/A:
Si no se encuentra el valor de búsqueda, IF ISNA VLOOKUP devuelve un texto personalizado en lugar del error N/A.

Cómo funciona esta fórmula

La lógica de la fórmula es muy simple: use la función ISNA para verificar si Vlookup tiene errores #N/A. Si ocurre un error, ISNA devuelve VERDADERO, de lo contrario FALSO. Los valores anteriores van a la prueba lógica de la función SI, que realiza una de las siguientes acciones:

  • Si el booleano es VERDADERO (error #N/A), se muestra su mensaje.
  • Si el valor booleano es FALSO (se encuentra el valor de búsqueda), Vlookup devuelve una coincidencia normal.

IFNA VLOOKUP en versiones más recientes de Excel

A partir de Excel 2013, puede usar la función IFNA en lugar de ISNA IF para detectar y manejar errores #N/A:

IFNA(BÚSQUEDA V(…), «Extraviado«)

En nuestro ejemplo, la fórmula tomaría la siguiente forma:

=IFNA(VLOOKUP(F1,$A$2:$C$10,3, FALSE), "Not found")

Consejo. Si desea detectar todo tipo de errores, no solo #N/A, use BUSCARV en combinación con la función IFERROR. Puede encontrar más detalles aquí: IFERROR VLOOKUP en Excel.

Excel Vlookup: si no se encuentra, devuelve 0

Cuando trabaje con valores numéricos, es posible que desee devolver un cero cuando no se encuentre el valor de búsqueda. Para hacer esto, use la fórmula IF ISNA VLOOKUP discutida anteriormente con una pequeña modificación: en lugar de un mensaje de texto, proporcione 0 en valor_si_verdadero argumento de la función SI:

SI(ESNA(BÚSQUEDAV(…)), 0, BÚSQUEDAV(…))

En nuestra tabla de ejemplo, la fórmula sería la siguiente:

=IF(ISNA(VLOOKUP(F2,$A$2:$C$10,3,FALSE)), 0, VLOOKUP(F2,$A$2:$C$10,3,FALSE))
Si la fórmula de búsqueda: si no se encuentra, devuelve 0

En versiones recientes de Excel 2016 y 2013, puede volver a utilizar la combinación IFNA Vlookup:

=IFNA(VLOOKUP(I2,$A$2:$C$10,3, FALSE), 0)

Excel Vlookup: si no se encuentra, devuelve una celda vacía

Esta es otra variante de la declaración «Vlookup if then»: no devuelve nada cuando no se encuentra el valor de búsqueda. Para hacer esto, indique a su fórmula que devuelva una cadena vacía («») en lugar del error #N/A:

SI(ESNA(BÚSQUEDAV(…)), “”, BÚSQUEDAV(…))

A continuación se muestran algunos ejemplos completos de fórmulas:

Para todas las versiones de Excel:

=IF(ISNA(VLOOKUP(F2,$A$2:$C$10,3,FALSE)), "", VLOOKUP(F2,$A$2:$C$10,3,FALSE))

Para Excel 2016 y Excel 2013:

=IFNA(VLOOKUP(F2,$A$2:$C$10,3, FALSE), "")
Si la fórmula de búsqueda: si no se encuentra, devuelva en blanco (cadena vacía)

If con coincidencia de índice: búsqueda izquierda con la condición If

Los usuarios experimentados de Excel saben que la función V SEARCH no es la única forma de realizar búsquedas verticales en Excel. La combinación INDEX MATCH también se puede utilizar para este propósito y es aún más potente y versátil. La buena noticia es que Index Match puede funcionar junto con IF exactamente de la misma manera que Vlookup.

Por ejemplo, tiene números de pedido en la columna A y nombres de proveedores en la columna B. Está buscando una fórmula para extraer el número de pedido de un proveedor específico.

Vlookup no se puede usar en este caso porque no puede buscar de derecha a izquierda. Index Match funcionará bien siempre que el valor de búsqueda se encuentre en la columna de búsqueda. De lo contrario, se producirá un error #N/A. Para reemplazar la notación de error estándar con su propio texto, coloque Index Match dentro de IF ISNA:

=IF(ISNA(INDEX(A2:A10, MATCH(F1, $B$2:$B$10, 0))), "Not found", INDEX(A2:A10, MATCH(F1, $B$2:$B$10, 0)))

En Excel 2016 y 2016, puede usar IFNA en lugar de IF ISNA para hacer la fórmula más compacta:

=IFNA(INDEX(A2:A10, MATCH(F1, $B$2:$B$10, 0)), "Not found")
Uso de If con coincidencia de índice para realizar una búsqueda izquierda sin errores N/A

De manera similar, puede usar Index Match en otras fórmulas If.

Así es como usa Vlookup y la declaración IF juntas en Excel. Para echar un vistazo más de cerca a las fórmulas discutidas en este tutorial, puede descargar nuestro libro de trabajo de muestra a continuación. ¡Gracias por leer y espero verte en nuestro blog la próxima semana!

Libro de ejercicios para descargar.

Excel IF Vlookup – fórmulas de ejemplo (archivo .xlsx)

También te puede interesar

Publicaciones relacionadas

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Botón volver arriba
Cerrar