En una entrada anterior de nuestra serie de funciones indispensables que debes conocer en Excel vimos la función BUSCARV. No hay duda de que es una de las funciones más usadas en Excel debido a su utilidad y sintaxis simple. Sin embargo, también existe otra fórmula de búsqueda, compuesta por dos funciones, que se ha convertido en un estándar para los usuarios de Excel. En muchas ocasiones incluso es descrita como una versión mejorada de BUSCARV. No es otra que la construcción INDICE / COINCIDIR, la cual, como veremos, permite realizar búsquedas más flexibles y robustas que BUSCARV.
Lo importante a entender con esta fórmula es cuando debemos utilizarla en lugar de un simple BUSCARV. Recordemos que en Excel muchas veces podemos lograr los mismos resultados utilizando procesos diferentes, lo cual nos da flexibilidad al momento de trabajar. Sin embargo, al mismo tiempo, debemos considerar si la fórmula o función que utilicemos será la más adecuada en nuestro caso, ya sea por la estructura de nuestros datos, si los mismos son estáticos o dinámicos, los usuarios que manejarán nuestro archivo e incluso la urgencia con la que necesitemos finalizar nuestros análisis. Todos estos factores tienen su peso al decidir un curso de acción cuando iniciamos todo trabajo en nuestras hojas de cálculo.
Al final de este artículo veremos cómo trabaja la construcción ÍNDICE / COINCIDIR. De momento, veamos cada función de forma separada para entender su funcionamiento.
Sintaxis función ÍNDICE
La función ÍNDICE posee dos formas: matriz y referencia.
Forma de Matriz
=ÍNDICE(matriz, número de fila, número de columna)
Se utiliza cuando deseamos obtener un valor dentro de un rango o matriz. Si nuestro primer argumento es un rango, esta será la forma que estaremos utilizando. En el caso de la construcción INDICE / COINCIDIR es la forma que usaremos.
En su forma más sencilla, la función devuelve el valor que se encuentra en la intersección de fila y columna. Adicionalmente, ambos argumentos tienen un par de variantes interesantes:
- Numero de fila: Puede omitirse, pero se debe proveer el número de columna. También puede ser 0, en cuyo caso la función devolverá la matriz completa de valores correspondientes a la columna. Para obtener un resultado como matriz, en este último caso, la función debe introducirse con la combinación Ctrl + Mayús (Shift) + Entrar (Enter).
- Numero de columna: Puede omitirse, pero se debe proveer el número de fila. Al igual que la fila, puede ser 0, en cuyo caso la función devolverá la matriz completa de valores correspondientes a la fila. Como el caso anterior, para obtener la matriz de valores la función debe introducirse con la combinación Ctrl + Mayús (Shift) + Entrar (Enter).
Si el número de fila o columna supera los límites de la matriz o rango del primer argumento, la función devolverá el error #¡REF!. Veamos cómo funciona en el siguiente ejemplo.
Como pueden observar, la función ÍNDICE en su forma de matriz nos devuelve el valor en la intersección de una fila y una columna dentro de un rango especificado.
Forma de Referencia
=INDICE(referencia, número de fila, número de columna, número de área)
La función ÍNDICE también puede utilizarse de esta forma, la cual nos devolverá una referencia a la intersección de la fila o columna especificada. Es importante notar que el resultado en pantalla será el valor contenido en la celda y dependerá de la fórmula donde se utilice si es reconocido como una referencia a celda o no. Mediante la opción Evaluar fórmula, podremos verificar si la función ÍNDICE en está siendo interpretada como una referencia a la celda o directamente por su valor.
En esta forma la función ÍNDICE nos permite, por ejemplo, crear rangos dinámicos que permitan incorporar automáticamente nuevos valores añadidos a una columna. Para demostrar esta modalidad, estaremos utilizando la función ÍNDICE y la función SUMA. Veamos el siguiente ejemplo.
Al evaluar la fórmula observamos que la función SUMA utiliza el rango que va desde la celda C5 hasta la referencia generada por la función ÍNDICE. Para verificar que el resultado está siendo interpretado como una referencia, realizamos la evaluación de la fórmula paso a paso.
Ahora que ya tenemos claro el funcionamiento de la función ÍNDICE, continuemos con la función COINCIDIR.
Sintaxis función COINCIDIR
=COINCIDIR(valor buscado, matriz de búsqueda, [tipo de coincidencia])
Esta función devolverá la posición relativa de un elemento dentro de un rango o matriz especificados. Los tres argumentos que deben pasarse a la función son muy sencillos. El primer argumento es el elemento o valor que deseamos buscar, el cual puede ser un valor numérico o texto. Seguidamente, debemos especificar dónde debemos buscar dicho valor, esta será nuestra matriz o rango de búsqueda. Finalmente tenemos el tipo de coincidencia. Veamos más en detalle cómo funciona este tercer argumento.
El último argumento indica la forma en que la función debe interpretar la búsqueda. Son tres los valores posibles:
- Coincidencia exacta (0),
- Coincidencia mayor o igual (-1) y
- Coincidencia menor o igual (1) u omitido.
El primer valor es el más utilizado y realizará la búsqueda de un valor exactamente igual al valor buscado. Para lograr búsquedas aproximadas con el valor 1 los datos deben estar ordenados de forma ascendente y para el valor -1 deben estar ordenados de forma descendente. En próximos artículos veremos más detalles sobre el funcionamiento de estos dos últimos valores. Hoy nos centraremos en el uso con el argumento 0 (Coincidencia exacta).
Un último aspecto que vale la pena destacar sobre la función COINCIDIR es que, si el tipo de coincidencia es 0 y el valor buscado es de tipo texto, el uso de caracteres comodines » ? » y » * » es posible, lo cual amplia la flexibilidad de la función.
Posición del valor buscado
Esto es lo que debemos recordar cuando utilicemos la función COINCIDIR, la posición dentro de un rango. Veamos de forma práctica cómo funciona.
En cada cambio del argumento Producto se genera una nueva posición. Lo importante a considerar aquí es que la posición siempre será relativa al rango que hallamos seleccionado y no a la totalidad de la hoja.
De la misma forma, podemos observar que la función COINCIDIR, al devolver la posición o fila relativa de un ítem, puede servirnos como argumento dentro de la función ÍNDICE, la cual tiene el número de fila como uno de sus argumentos. Esta es la base de la construcción que veremos a continuación.
ÍNDICE / COINCIDIR
Luego que hemos visto los detalles de cada función, llegamos a la construcción ÍNDICE / COINCIDIR. Esta se ha convertido en un estándar para realizar búsquedas en Excel y, como ya lo mencioné al inicio, muchas veces se describe como una versión mejorada de BUSCARV, principalmente porque:
- Permite búsquedas a la izquierda del valor buscado. En su forma básica, BUSCARV sólo permite buscar valores hacia la derecha.
- Si se incluyen o eliminan columnas o filas en nuestro rango, la fórmula seguirá funcionando.
- Puedes realizar búsquedas horizontales y verticales con la misma fórmula / lógica en lugar de utilizar BUSCARV y BUSCARH.
La sintaxis básica de esta fórmula es:
=INDICE(Columna con el valor a Devolver (como rango), COINCIDIR(Valor Buscado, Rango de Búsqueda, Tipo de Coincidencia))
Donde la función COINCIDIR proveerá a la función ÍNDICE del argumento fila, desde la cual se devolverá el valor a la columna objetivo correspondiente. Para ilustrar como funciona veamos el siguiente ejemplo.
He incluido la comparación con la función BUSCARV para que se vea claramente cómo cambia la dirección de la búsqueda entre ambas estructuras.
Muchas veces he visto que los usuarios están tan acostumbrados a usar BUSCARV que, cuando necesitan superar las limitaciones inherentes a esa función utilizando INDICE/COINCIDIR, no recuerdan su sintaxis. Por esta razón, siempre recomiendo empezar a implementarla inmediatamente, en lugar de BUSCARV, para que fijemos sus estrucutra en nuestra memoria. Siguiendo la lógica de que ambas estructuras poseen los mismos argumentos, pero en orden distinto, la podremos memorizar fácilmente. En la siguiente comparativa podremos verlo claramente.
Para que puedan experimentar con los ejemplos utilizados, pueden descargar el archivo utilizado en los ejemplos aquí. Recuerden, para mejorar en el uso de funciones y de nuestra aplicación favorita, lo mejor es practicar e implementar lo que aprendamos en nuestras labores diarias, sólo así iremos perfeccionando nuestra habilidad con esta herramienta. Hasta un próximo artículo.