Recuperar el primer valor coincidente en una celda frente a una lista
Suponga que tiene una lista de palabras clave y desea recuperar la primera que aparezca en una celda específica, incluso si dicha celda contiene otros valores. Para lograrlo, deberá usar una fórmula de INDEX y MATCH, con la ayuda de las funciones AGGREGATE y SEARCH.

¿Cómo recuperar en una celda el primer valor coincidente de una lista?
Para obtener la primera palabra clave coincidente en una celda frente a la lista de palabras clavetal como se muestra en la tabla anterior, debes realizar una coincidencia parcial en lugar de una coincidencia exacta. Para ello, utiliza la función SEARCH para pasar las posiciones numéricas de las palabras clave que aparecen en la celda a la función AGGREGATE. A continuación, AGGREGATE obtendrá el número más pequeño al establecer su function_num en 15 y el argumento ref2 en 1. Después, usa MATCH para localizar el valor más pequeño y pasa ese número de posición a INDEX para recuperar el valor correspondiente.
Sintaxis genérica
=INDEX()keyword_rng,MATCH(AGGREGATE(15,6,SEARCH()))keyword_rng,lookup_cell),1),SEARCH(keyword_rng,lookup_cell),0))
√ Nota: Esta es una fórmula matricial que requiere pulsar Ctrl+Mayús+Intro.
- keyword_rng: El rango de celdas que contiene las palabras clave.
- lookup_cell: La celda en la que se buscará si contiene las palabras clave.
Para recuperar la primera palabra clave coincidente que aparece en la celda B5 frente a la columna Palabras clave, copie o introduzca la siguiente fórmula en la celda C5 y pulse Ctrl+Mayús+Intropara obtener el resultado:
=INDEX()$E$5:$E$7,MATCH(AGGREGATE(15,6,SEARCH()))$E$5:$E$7,B5),1),SEARCH($E$5:$E$7,B5),0))
√ Nota: Los signos de dólar ($) indican referencias absolutas, lo que significa que el keyword_rngde la fórmula no cambiará al moverla o copiarla a otras celdas. Sin embargo, no se han añadido signos de dólar a la lookup_cellporque se desea que sea dinámica. Tras introducir la fórmula, arrastre el controlador de relleno hacia abajo para aplicarla a las celdas inferiores.

Explicación de la fórmula
=INDEX($E$5:$E$7,)MATCH()AGGREGATE(15,6,)SEARCH($E$5:$E$7,B5),1),SEARCH($E$5:$E$7,B5),0))
- SEARCH($E$5:$E$7,B5):La función SEARCH devuelve la posición de cada palabra clave del rango $E$5:$E$7 cuando se encuentra, expresada mediante números, y el error #VALUE! si no se encuentra. El resultado es un array como este: {15;11;#VALUE!}.
- AGGREGATE(15,6,)SEARCH($E$5:$E$7,B5),1)=AGGREGATE(15,6,){15;11;#VALUE!},1):La función AGGREGATE con un function_num de 15 y una opción de 6 devuelve el valor más pequeño del array según el argumento ref2 (1), ignorando los valores de error. Por tanto, el fragmento devuelve 11.
- MATCH()AGGREGATE(15,6,)SEARCH($E$5:$E$7,B5),1),SEARCH($E$5:$E$7,B5)=MATCH()11,{15;11;#VALUE!},0): La match_type 0 obliga a la función MATCH a realizar una coincidencia exacta y devolver la posición de 11 en el array {15;11;#VALUE!}. Así, la función devuelve 2.
- INDEX($E$5:$E$7,)MATCH()AGGREGATE(15,6,)SEARCH($E$5:$E$7,B5),1),SEARCH($E$5:$E$7,B5)) = INDEX($E$5:$E$7,2):La función INDEX devuelve entonces el 2.º valor del rango $E$5:$E$7, que es bbb.
Observación
- Si no hay palabras clave en una celda, se devolverá el error #NUM!.
- La fórmula no distingue entre mayúsculas y minúsculas. Para realizar una coincidencia que sí las distinga, basta con sustituir la función SEARCH por la función FIND.
Funciones relacionadas
La función INDICE de Excel devuelve el valor mostrado según una posición específica dentro de un rango o una matriz.
La función COINCIDIR de Excel busca un valor específico en un rango de celdas y devuelve su posición relativa.
En Excel, la función SEARCH te permite localizar la posición de un carácter o subcadena específica dentro de una cadena de texto, tal como se muestra en la siguiente captura de pantalla. Este tutorial explica cómo utilizar la función SEARCH en Excel.
La función AGGREGATE de Excel devuelve un resultado agregado —como SUMA, CONTAR, PEQUEÑO, entre otros— con la opción de omitir errores y filas ocultas.
Fórmulas relacionadas
Recuperar el primer valor de una lista desde una celda
Para recuperar la primera palabra clave de una lista que aparece en una celda específica —cuando dicha celda contiene uno de varios valores—, deberá usar una fórmula matricial bastante compleja que combine las funciones INDEX, MATCH, ISNUMBER y SEARCH.
Coincidencia exacta con INDEX y MATCH
Si necesita obtener información de Excel sobre un producto, película o persona concretos, aproveche al máximo la potente combinación de las funciones INDEX y MATCH.
Comprobar si una celda contiene un texto específico
Este tutorial ofrece fórmulas para verificar si una celda contiene un texto específico y devolver VERDADERO o FALSO, tal como se muestra en la siguiente captura de pantalla, además de explicar sus argumentos y cómo funcionan.
Comprobar si una celda contiene todos los elementos de una lista
Supongamos que en Excel tienes una lista de valores en la columna E y quieres comprobar si las celdas de la columna B contienen todos esos valores, devolviendo VERDADERO o FALSO, tal como se muestra en la siguiente captura de pantalla. Este tutorial te ofrece una fórmula para resolver esta tarea.
Comprobar si una celda contiene alguno de varios elementos
Este tutorial ofrece una fórmula para verificar si una celda contiene alguno de varios valores en Excel, y explica sus argumentos y cómo funciona.
Las mejores herramientas de productividad para Office
Kutools para Excel - Le ayuda a destacar entre la multitud
Kutools para Excel Cuenta con más de 300 funciones,asegurando que lo que necesita esté siempre a un clic...
Office Tab - Habilita la lectura y edición con pestañas en Microsoft Office (incluido Excel)
- ¡Alterne entre decenas de documentos abiertos en un segundo!
- Reduzca cientos de clics del ratón cada día y despídase del síndrome del ratón.
- Aumente su productividad en un 50 % al ver y editar varios documentos simultáneamente.
- Lleva una navegación eficiente con pestañas a Office (incluido Excel), al estilo de Chrome, Edge y Firefox.