Excel formula: Extract nth word from text string

Fórmula genérica

=ESPACIOS(EXTRAE(SUSTITUIR(A1," ",REPETIR(" ",LARGO(A1))), (N-1)*LARGO(A1)+1, LARGO(A1)))

Explicación

Si necesita obtener la enésima palabra en una cadena de texto (es decir, una oración, frase o párrafo), puede hacerlo con una fórmula inteligente (e intimidante) que combina 5 funciones de Excel: ESPACIOS, EXTRAE, SUSTITUIR, REPETIR y LARGO.

Cómo funciona esta fórmula

En el fondo, esta fórmula toma una cadena de texto con espacios y la "inunda" con espacios adicionales al reemplazar cada espacio con varios espacios usando SUSTITUIR y REPETIR. El número de espacios utilizados se basa en la longitud total del texto original.

Puedes pensar en el resultado en este punto como "islas" de palabras flotando en un mar de espacio :)

Luego, la fórmula usa la función EXTRAE para extraer la palabra deseada. El punto de partida se resuelve con:

(N-1)*LARGO(A1)+1

Y el total de caracteres extraídos es igual a la longitud de la cadena de texto completo.

En este punto, tenemos la palabra que deseas, rodeada de espacios. Finalmente, la función ESPACIOS corta todos los caracteres de espacio y devuelve solo la palabra.

Realmente me gusta esta fórmula, porque muestra lo que puedes lograr con algo de pensamiento creativo.

Texto a columnas

No olvide que Excel tiene una función incorporada de Texto a columnas que puede dividir el texto de acuerdo con el delimitador que elija. Si solo necesita obtener la tercera palabra de muchas cadenas de texto, esta fórmula puede ser más conveniente (y dinámica), pero Text to Columns sigue siendo útil en muchas situaciones.


Comentarios en Facebook


0 comentarios:

Copyright © 2021 TRUJILLOSOFT