En otras ocasiones ya hemos visto como funciona la famosa función de BUSCARV (ver más) e incluso para hacer un BUSCARV doble (ver más) pero esta vez vamos a hacer algo mucho más “top”… mucho más interesante, y que todos en algún momento hemos necesitado… esto es, hacer un BUSCARV con más de una condición.
Método concatenar
Mucha gente usa este método y es válido, simplemente requiere crear una columna adicional con las condiciones de la tabla que queremos usar anidadas en una misma columna. De esta manera, nuestras condiciones estarán anidadas mediante el símbolo & y la columna auxiliar tendrá las mismas columnas anidadas de la misma manera.
En la siguiente imagen podéis ver un ejemplo de esta tabla con su columna auxiliar.
Donde la columna C (AUXILIAR) es el equivalente a la siguiente fórmula:
=Condición1&Condición2
Supongamos que elegimos las variables “Alfa” y “B”, el resultado esperado sería 50, que lo encontramos en la fila 6 de la imagen anterior.
En la imagen siguiente podéis ver cómo nos hemos organizado la información:
En la columna A hemos escrito las dos condiciones y en la columna B hemos unido ambas condiciones mediante la fórmula:
=A13&A14
De esta manera, como puede verse en la imagen, tenemos una celda que se llama condición final y que une las dos condiciones.
Finalmente usaremos la función BUSCARV con las columnas C y D de la tabla, es decir, buscaremos en C nuestra “Condición Final” para que nos devuelva el valor de D. La fórmula utilizada es:
=BUSCARV(B13;$C$2:$D$9;2;0)
Donde B13 es la “condición final”.
Esta función puede ponerse también con la condición final dentro de la propia fórmula de la siguiente manera:
=BUSCARV(A13&A14;$C$2:$D$9;2;0)
Des esta forma, puede que sea un poco más sencillo de leer y entender.
Método matricial
Este método utiliza el concepto de matriz en Excel (ver más) y junta las funciones ELEGIR (ver más) y BUSCARV. No hace falta entenderlo al 100% simplemente saber cómo se aplica independientemente de cómo sean las circunstancias en las que nos encontramos.
En la siguiente imagen vemos una tabla igual a la anterior pero sin la columna auxiliar puesto que directamente utilizaremos la función BUSCARV junto con ELEGIR.
La fórmula utilizada es la siguiente:
=BUSCARV(B13;ELEGIR({1\2};$A$2:$A$9&$B$2:$B$9;$C$2:$C$9);2;0)
Donde tenemos la siguiente novedad dentro del BUSCARV
=BUSCARV(valor_buscado;ELEGIR({1\2};$A$2:$A$9&$B$2:$B$9;$C$2:$C$9);columna;verdadero)
es decir, donde normalmente iría la tabla donde debemos buscar el valor la hemos sustituido por la función ELEGIR. Esta función se compone de un primer vector {1\2} puesto que estamos usando dos columnas, la siguiente parte es la unión entre las dos columnas que tienen los criterios y la tercera es la columna donde se encuentra el valor que queremos que sea el resultado.
Pero esta fórmula es matricial por lo que para insertarla, en vez de simplemente apretar la tecla intro deberemos apretar las teclas ctrl + mayusc+ intro. Una vez hecho esto… ta chán!!! Habremos construido nuestra fórmula con dos condiciones. A continuación vamos a ver cómo construir nuestra función BUSCARV con varios criterios.
Ejemplo de BUSCARV con varios criterios
La fórmula que deberemos utilizar es muy similar a la anterior. La fórmula, desde un punto de vista académico sería la siguiente:
=BUSCARV(valor_buscado;ELEGIR({1\2\...\N};Columna1−−DVFMTSC−−>−−−DVFMTSC−−>−DVFMTSC−−DVFMTSC−−>−−−DVFMTSC−−>−> &−−DVFMTSC−−>−−−DVFMTSC−−>−DVFMTSC−−DVFMTSC−−>−−−DVFMTSC−−>−> Columna−−DVFMTSC−−>−−−DVFMTSC−−>−DVFMTSC−−DVFMTSC−−>−−−DVFMTSC−−>−> 2−−DVFMTSC−−>−−−DVFMTSC−−>−DVFMTSC−−DVFMTSC−−>−−−DVFMTSC−−>−> &−−DVFMTSC−−>−−−DVFMTSC−−>−DVFMTSC−−DVFMTSC−−>−−−DVFMTSC−−>−> ...−−DVFMTSC−−>−−−DVFMTSC−−>−DVFMTSC−−DVFMTSC−−>−−−DVFMTSC−−>−> &−−DVFMTSC−−>−−−DVFMTSC−−>−DVFMTSC−−DVFMTSC−−>−−−DVFMTSC−−>−> Columna−−DVFMTSC−−>−−−DVFMTSC−−>−DVFMTSC−−DVFMTSC−−>−−−DVFMTSC−−>−> N;Columna_resultado);2;0)
Como puede verse en la siguiente imagen, hemos usado la función BUSCARV con varios criterios, en concreto con 4. Para facilitar la lectura hemos quitado el los símbolos de $ para fijar columnas (aprende a usar el símbolo de $)
En el siguiente enlace podéis descargar el archivo de este ejemplo para que puedas practicar sin ningún problema:
Ejemplo de BUSCARV con múltiples condiciones