Excel: Una fórmula para buscar en tablas

Si tenés una tabla con varias columnas (legajo, nombre, apellido, documento, sueldo, etc.) y querés una fórmula que, para un determinado documento, te indique el nombre y el apellido que le corresponden, te damos la función que corresponde a tu búsqueda.
MIE, 10 / JUN / 2015

En principio, este tipo de problemas se resuelve con la función BUSCARV (CONSULTAV en Excel 2010). Por ejemplo, si tenemos una tabla en el rango [A1:B10], con Legajo en la primera columna y Nombre en la segunda, con títulos en la primera fila y los datos propiamente dichos a partir de la segunda. Si tenemos un legajo en [D1], obtenemos el nombre que le corresponde con la función =BUSCARV(D1;A2:B10;2;FALSO). Hay cuatro argumentos entre los paréntesis:

El primero es el valor que determina qué dato estamos buscando. En este caso, el número de legajo.
El segundo es la tabla que relaciona el dato anterior con el que estamos buscando.

En este caso, [A2:B10].

El segundo indica en qué columna está el dato que estamos buscando. En este caso, un dos, porque buscamos el nombre de la segunda columna de la tabla.
El tercero, el valor lógico FALSO, indica que estamos buscando una coincidencia exacta: exactamente ese legajo y no otro.

Esta función no resuelve el problema del lector porque siempre busca a partir de la primera columna de la tabla hacia la derecha. Si el dato buscado (el nombre) está antes del valor con el que entramos en la tabla (el legajo), la función no sirve.

Podemos reproducir el resultado de esta función sin la limitación anterior, combinando otras dos funciones: COINCIDIR e INDICE.

La función COINCIDIR nos indica la posición de un valor buscado dentro de una lista. Por ejemplo, si tenemos una lista de documentos en [D2:D10] y un documento en particular en [A12], la función =COINCIDIR(A12;D2:D10;0) nos dice qué posición ocupa el valor indicado como primer argumento dentro del rango señalado como segundo argumento. El tercer argumento (el número cero) indica que estamos buscando una coincidencia exacta.

A continuación podemos usar la función INDICE para saber qué apellido ocupa la misma posición en la lista de apellidos. Si la posición fue obtenida con COINCIDIR en la celda [A13], el apellido lo obtenemos con =INDICE(C2:C10;A13). El primer argumento es la lista de apellidos y el segundo, la posición del apellido buscado. Podemos combinar ambas funciones en una única fórmula: =INDICE(C2:C10;COINCIDIR(A12;D2:D10;0)).

En esta expresión, el segundo argumento de la función INDICE es el valor de la función COINCIDIR.

¡Comparte esta noticia!

Últimos lanzamientos Ver más