Su pensión en Colpensiones. Calcule la que tendría hoy o planee la que quiere tener. Conózcalo aquí

BUSCARV con condiciones y con dos criterios en Excel

BUSCARV encuentra un valor en la primera columna de una tabla y devuelve el dato de otra columna de la misma fila. Se puede condicionar de dos formas distintas: hacer que la búsqueda solo se ejecute si se cumple una condición, combinándola con SI, o buscar con dos o más criterios a la vez, como un empleado y un mes. ¿Cómo se escribe cada fórmula y qué alternativas hay a BUSCARV cuando los criterios son varios?

Repaso de BUSCARV.

La función tiene cuatro argumentos:

=BUSCARV(valor_buscado;tabla;columna;FALSO)

El valor buscado debe estar en la primera columna de la tabla; columna es el número de la columna de la que se trae el dato, contando desde la primera de la tabla, y FALSO exige una coincidencia exacta. Si se omite el último argumento, BUSCARV hace una búsqueda aproximada, que en una tabla sin ordenar devuelve resultados equivocados sin mostrar error.

El funcionamiento completo de la función se explica en el artículo sobre cómo usar BUSCARV en Excel.

BUSCARV con una condición.

Supongamos una tabla de clientes con el nombre en la columna A, la deuda en la B y los días de mora en la C. Queremos traer la deuda de un cliente solo si su mora es de 30 días o más; si no, que el resultado sea cero. Con el nombre del cliente en G4 y sus días de mora en G5:

=SI(G5>=30;BUSCARV(G4;A5:C9;2;FALSO);0)

La fórmula tiene dos partes. La condición, G5>=30, decide si se hace la búsqueda; BUSCARV, dentro del SI, trae la deuda de la columna 2. Si Tomás tiene 45 días de mora, el resultado es su deuda; si Lucía tiene 12, el resultado es 0.

Los días de mora de G5 también pueden traerse con BUSCARV: =BUSCARV(G4;A5:C9;3;FALSO).

Con dos condiciones.

Para traer la deuda solo si la mora está entre 30 y 89 días, las dos condiciones se unen con Y:

=SI(Y(G5>=30;G5<90);BUSCARV(G4;A5:C9;2;FALSO);0)

La búsqueda solo se ejecuta si se cumplen ambas condiciones. Las funciones Y y O se explican en el artículo sobre las funciones condicionales en Excel.

Cuando el valor no existe.

Si el cliente buscado no está en la tabla, BUSCARV devuelve #N/A. Para mostrar un mensaje en su lugar, se envuelve en SI.ERROR:

=SI.ERROR(BUSCARV(G4;A5:C9;2;FALSO);"No existe")

El mensaje puede reemplazarse por 0 o por "" para dejar la celda vacía.

BUSCARV con dos criterios.

El otro caso es buscar con dos datos a la vez. Supongamos una tabla de ventas con el empleado en la columna B, el mes en la C y las ventas en la D, donde cada empleado aparece varias veces, una por mes. Para traer las ventas de Lucía en febrero no basta con buscar «Lucía», porque BUSCARV se detendría en la primera fila de Lucía, que es la de enero.

Hay cuatro formas de resolverlo.

1. Con una columna auxiliar.

BUSCARV solo busca en una columna, de modo que se crea una columna, a la izquierda de la tabla, que una los dos criterios. En A5:

=B5&"|"&C5

Se copia hacia abajo y cada fila queda con una clave como «Lucía|Febrero». La barra evita que dos combinaciones distintas formen la misma clave. Luego se busca la clave armada con los dos criterios:

=BUSCARV(H4&"|"&H5;A5:D10;4;FALSO)

Un error frecuente es escribir =BUSCARV("Tomás"&"Enero";A2:B10;2) sin haber creado la columna auxiliar: la fórmula busca el texto «TomásEnero», que no existe en ninguna celda, y devuelve #N/A.

2. Sin concatenar, con INDICE y COINCIDIR.

Para no agregar columnas, se combina INDICE con COINCIDIR y se multiplican las dos condiciones:

=INDICE(D5:D10;COINCIDIR(1;(B5:B10=H4)*(C5:C10=H5);0))

Cada comparación devuelve una lista de VERDADERO y FALSO; al multiplicarlas, solo la fila que cumple ambas da 1. COINCIDIR encuentra la posición de ese 1 e INDICE devuelve las ventas de esa fila. En versiones anteriores a Microsoft 365, la fórmula se confirma con Ctrl + Mayús + Enter. Para tres criterios se agrega otra multiplicación.

3. Con SUMAR.SI.CONJUNTO.

Si lo que se busca es un número y cada combinación aparece una sola vez, SUMAR.SI.CONJUNTO es la forma más sencilla, porque suma los valores que cumplen todos los criterios:

=SUMAR.SI.CONJUNTO(D5:D10;B5:B10;H4;C5:C10;H5)

Si la combinación se repite, la fórmula suma todas las coincidencias, lo que puede ser justo lo que se necesita o un error, según el caso. No sirve para traer textos.

4. Con BUSCARX en Microsoft 365.

En Excel para Microsoft 365 y Excel 2021, BUSCARX acepta matrices unidas con &:

=BUSCARX(H4&H5;B5:B10&C5:C10;D5:D10;"No existe")

No requiere columna auxiliar ni fórmula matricial, y el último argumento reemplaza a SI.ERROR.

Buscar el valor máximo con una condición.

Una consulta frecuente es encontrar el precio más alto de un producto en una tabla de compras con varias fechas, y la fecha de esa compra. El precio máximo de un código se obtiene con MAX.SI.CONJUNTO, disponible desde Excel 2019:

=MAX.SI.CONJUNTO(D5:D10;A5:A10;H4)

Y la fecha de esa compra, con INDICE y COINCIDIR con dos criterios, el código y el precio máximo:

=INDICE(C5:C10;COINCIDIR(1;(A5:A10=H4)*(D5:D10=H5);0))

Si lo que se busca es el producto más caro de toda la tabla, basta con =INDICE(B5:B10;COINCIDIR(MAX(D5:D10);D5:D10;0)).

Descargar el ejemplo en Excel.

El archivo tiene tres hojas: «BUSCARV con condición», con la consulta de deuda según los días de mora; «Dos criterios», con los cuatro métodos aplicados al mismo ejemplo de empleado y mes, y «Precio mayor», con el precio máximo de un producto y su fecha. Descargar archivo.

Preguntas frecuentes.

A continuación respondemos las preguntas frecuentes de nuestros lectores.

¿Cómo hago un BUSCARV con condicional?

Poniendo BUSCARV dentro de SI: =SI(condición;BUSCARV(…;FALSO);0). La búsqueda solo se hace si la condición se cumple.

¿Cómo uso BUSCARV con dos condiciones?

Creando una columna auxiliar que una los dos criterios, =B5&"|"&C5, y buscando la clave unida. Sin columna auxiliar, con INDICE y COINCIDIR o con BUSCARX.

¿Se puede hacer BUSCARV con dos criterios sin concatenar?

Sí, con =INDICE(rango_resultado;COINCIDIR(1;(rango1=criterio1)*(rango2=criterio2);0)), o con SUMAR.SI.CONJUNTO si el resultado es un número.

¿Por qué BUSCARV me devuelve un dato equivocado?

Porque se omitió el último argumento FALSO y la función hizo una búsqueda aproximada.

¿Cómo voy a la celda cuya dirección está escrita en otra celda?

Con =HIPERVINCULO("#"&G1;"Ir"), que crea un vínculo a la dirección escrita en G1, por ejemplo A239. Con una macro: Application.Goto Range(Range("G1").Value).

¿Aún no tienes cuenta en Gerencie.com?
El registro es completamente gratis y desbloquea beneficios exclusivos.

Forma de citar este artículo (APA):

Gerencie.com. (2026, octubre 12). BUSCARV con condiciones y con dos criterios en Excel [Entrada de blog]. Recuperado de https://www.gerencie.com/funcion-buscarv-condicionada-en-excel.html

Deje su opinión o su pregunta. Trataremos de darle respuesta. Su comentario o pregunta será editada automáticamente por el sistema.

Regístrese para que le avisemos cuando respondan su pregunta.