Buscar un valor y regresar múltiples resultados en Excel

Una pregunta que recibo frecuentemente es ¿Cómo hacer para que la función BUSCARV regrese múltiples resultados en Excel? La respuesta siempre es la misma: La función BUSCARV regresa un solo valor y no existe manera alguna de modificar su comportamiento, sin embargo podemos utilizar un método alterno.

Obtener varios resultados en Excel

Plantearé el problema de la siguiente manera. Tengo una lista de alumnos con una lista de puntos obtenidos en diferentes fechas. Ahora deseo obtener todos los puntos obtenidos por Carlos a lo largo del tiempo.

Buscar un valor y regresar múltiples resultados en Excel

Si utilizo la función BUSCARV solamente obtendré el primero de los resultados tal como lo observas en la imagen anterior. Es por esta razón que debemos recurrir a otras funciones para obtener varios resultados en Excel.

Identificar las filas con los resultados

El primer paso para regresar múltiples resultados en Excel es encontrar las filas que contienen el valor buscado (que se encuentra en la celda F1), y para ello utilizaré la siguiente fórmula matricial:

=SI($A$2:$A$11=$F$1, FILA())

Recuerda que para que una fórmula sea matricial debes pulsar la combinación de teclas Ctrl + Mayus + Entrar al terminar de introducir la fórmula. Para probar la fórmula propuesta selecciono el rango de celdas F2:F11 e introduzco la fórmula en la barra de fórmulas de Excel y pulso Ctrl + Mayus + Entrar para obtener el siguiente resultado:

Obtener varios resultados en Excel

Observa que solo aquellas filas que tienen el nombre “Carlos” en la columna A son aquellas que tienen un número bajo la columna F. De esta manera hemos encontrado las filas que nos interesan.

Ordenar los resultados

Con la fórmula anterior podemos identificar las filas que concuerdan con el valor buscado pero debemos ordenar esos resultados de manera que los números 3, 5, 6 y 10 no estén separados por los valores FALSO. Podemos utilizar la siguiente fórmula matricial:

=K.ESIMO.MENOR(SI($A$2:$A$11=$F$1, FILA()), FILA()-1)

La función K.ESIMO.MENOR nos ayudará a ordenar los datos de manera ascendente. El primer argumento de la función es la misma fórmula del paso anterior y el segundo argumento es la función FILA que nos ayudará a indicar la posición que necesitamos. Observa el resultado de esta fórmula al aplicarla sobre el rango F2:F11:

Realizar búsqueda con varios resultados en Excel

Puedes observar que el segundo argumento de la función K.ESIMO.MENOR es la función FILA menos 1. La razón de esta operación es que los datos empiezan en la segunda fila de la hoja pero necesitamos hacer un ajuste, a través de la resta, para que se comience por el número 1.

Encontrar las coincidencias

Ahora que ya tenemos los números de las filas que nos interesan podemos utilizar la función INDICE para obtener los valores de la columna C que contienen los puntos de cada alumno que nos interesa mostrar. Considera la siguiente fórmula matricial:

=INDICE($C$1:$C$11, K.ESIMO.MENOR(SI($A$2:$A$11=$F$1, FILA()), FILA()-1))

El segundo argumento de la función INDICE es la misma fórmula del paso anterior. En el primer argumento he colocado el rango que contiene los puntos que deseo obtener. No debes olvidar pulsar la combinación de teclas Ctrl + Mayus + Entrar para crear la fórmula matricial:

Buscar en Excel con varios resultados

De esta manera hemos podido conocer todos los puntos de Carlos utilizando un solo término de búsqueda pero obteniendo múltiples resultados.

Corrección de errores

Como puedes ver en la última fórmula obtenemos varios mensajes de error #¡NUM!, así que un último paso sería utilizar la función SI.ERROR para evitar desplegar los mensajes de error. Con la siguiente fórmula elimino dichos mensajes:

=SI.ERROR(INDICE($C$1:$C$11, K.ESIMO.MENOR(SI($A$2:$A$11=$F$1, FILA()), FILA()-1)),"")

De igual manera debo introducir esta fórmula como una fórmula matricial para obtener el resultado deseado:

Fórmula en Excel para obtener varios resultados de búsqueda

Con nuestra fórmula establecida podremos realizar fácilmente la búsqueda de cualquier otro nombre y obtendremos todas sus puntos:

Ejemplo de múltiples resultados de búsqueda en Excel

Aunque no existe una función que nos devuelva varios resultados con una sola consulta, es posible utilizar un conjunto de funciones que nos permitirán buscar un valor y regresar múltiples resultados en Excel tal como lo hemos visto en esta ocasión. Te invito a descargar el libro de trabajo para seguir experimentando con este ejemplo.