He estado trabajando en un proyecto de Excel donde tengo una lista de elementos con un campo de descripción que estoy buscando y en la segunda hoja una lista de palabras para buscar con números asociados. Si coincido con una de las palabras en la descripción, devuelve el número de la segunda lista. De hecho, encontré la respuesta a esto en otra publicación (Si la cadena contiene una palabra de la lista, devuelve el valor adyacente al valor de la lista) pero no puedo averiguar cómo manejar múltiples coincidencias. Si es posible, quiero devolver todas las coincidencias posibles. Soy demasiado nuevo para comentar sobre esa pregunta en particular, así que no podría llevarme a cuestas. ¿alguna ayuda?

-1
Brent Tobiczyk 13 nov. 2017 a las 23:23

2 respuestas

La mejor respuesta

Cambie el 1 al final por COLUMN(A:A)

Y asegúrese de que todas las demás referencias sean absolutas:

=IFERROR(INDEX(Sheet1!$B$2:$B$5002,AGGREGATE(15,6,ROW($1:$5001)*SIGN(MATCH("*"&Sheet1!$A$2:$A$50002&"*",$C2,0)), COLUMN(A:A))),"")

Coloque la fórmula en la primera celda y copie la columna suficiente para obtener todos los retornos y el resto del conjunto de datos.

1
Scott Craner 13 nov. 2017 a las 22:48

Esta es una variación de la fórmula más común INDICE / MATCH. Al envolver PEQUEÑO alrededor de una matriz AGREGADA, puede identificar cada una de las coincidencias en el índice.

NOTA: Es una fórmula de matriz, por lo que deberá presionar ctrl + shift + enter, luego simplemente copie la fórmula hacia abajo para la cantidad de coincidencias que desea mostrar. (Si recibe el error #NUM, podría significar que olvidó presionar ctrl + shift + enter)

{=INDEX($B$2:$B$5002,SMALL(AGGREGATE(15,6,(ROW($A$2:$A$5002) - ROW($A$2)+1 / ISNUMBER(SEARCH("*SEARCH_TEXT_GOES_HERE*",$A$2:$A$5002))),ROW($2:2)),ROWS($2:2)))}

Esta fórmula se basa en la fórmula y la explicación aquí.

0
Avid 22 mar. 2019 a las 07:20