EXTRAER CUALQUIER PALABRA DE UNA CADENA DE TEXTO

Hola de nuevo a todos 🙂

Espero que hayáis tenido unas estupendas vacaciones 🙂 Yo ya las he finalizado y empiezo de nuevo con nuevas energías.

En el post de hoy vamos a introducirnos en el mundo de las fórmulas para mostrar cómo podemos obtener (extraer) cualquier palabra que nos propongamos en una cadena de texto y con una única fórmula.

Vamos a imaginar que tenemos los siguientes datos y que queremos extraer el número de experimento, los grados y las atmósferas:

EXTRAER CUALQUIER PALABRA DE UNA CADENA DE TEXTO

Esto se puede realizar con una macro, siempre que contemos con la misma estructura, de lo contrario, en programación puede suponer un desarrollo mayor.

Para poder comenzar la extracción solo vamos a necesitar una fórmula en la que combinaremos y anidaremos varias funciones. Para extraer la palabra que queremos, debemos conocer el número de ocupa en el texto, es decir: el número de experimento sería la sexta palabra, los grados la octava y las atmósferas la onceaba.

La única particularidad es que en la estructura de la fórmula, debemos indicar siempre un número menos del que tiene la palabra a extraer, por ejemplo, para extraer el número de experimento, que es la sexta palabra, debemos indicar en la fórmula el 5:

=EXTRAE(EXTRAE(EXTRAE(SUSTITUIR(A2;" ";"*";5);1;LARGO(A2));ENCONTRAR("*";SUSTITUIR(A2;" ";"*";5));LARGO(A2));2;ENCONTRAR(" ";EXTRAE(EXTRAE(SUSTITUIR(A2;" ";"*";5);1;LARGO(A2));ENCONTRAR("*";SUSTITUIR(A2;" ";"*";5));LARGO(A2)))-2)

Solo debemos indicarlo en la función SUSTITUIR, (que os marco en rojo).

Para extraer los grados, debemos indicar el 7 en la fórmula, dado que la palabra ocupa el octavo lugar:

=EXTRAE(EXTRAE(EXTRAE(SUSTITUIR(A2;" ";"*";7);1;LARGO(A2));ENCONTRAR("*";SUSTITUIR(A2;" ";"*";7));LARGO(A2));2;ENCONTRAR(" ";EXTRAE(EXTRAE(SUSTITUIR(A2;" ";"*";7);1;LARGO(A2));ENCONTRAR("*";SUSTITUIR(A2;" ";"*";7));LARGO(A2)))-2)

Para extraer las atmósferas, debemos indicar el 10 en la fórmula, dado que la palabra ocupa el onceavo lugar:

=EXTRAE(EXTRAE(EXTRAE(SUSTITUIR(A2;" ";"*";10);1;LARGO(A2));ENCONTRAR("*";SUSTITUIR(A2;" ";"*";10));LARGO(A2));2;ENCONTRAR(" ";EXTRAE(EXTRAE(SUSTITUIR(A2;" ";"*";10);1;LARGO(A2));ENCONTRAR("*";SUSTITUIR(A2;" ";"*";10));LARGO(A2)))-2)

El resultado, después de aplicar la fórmula en cada columna, es el siguiente:

EXTRAER CUALQUIER PALABRA DE UNA CADENA DE TEXTO1

Como habéis podido comprobar, hemos realizado un ejercicio muy habitual cuando trabajamos con cadenas de texto y sin tener que utilizar código. Además podemos trabajar aunque la estructura no sea igual en todos los casos, solo tenemos que indicar el número de la palabra que queremos extraer para conseguirlo.

Y esto ha sido todo por hoy, aún tengo bastante lío con las consultas pendientes y tengo que darle duro.

Como siempre, os dejo el archivo de ejemplo. Espero que os sea de utilidad 🙂

Descarga el archivo de ejemplo pulsando en: EXTRAER CUALQUIER PALABRA DE UNA CADENA DE TEXTO

 
¿Te ha resultado de interés?, puedes apoyar a Excel Signum con una pequeña donación.

Donate Button with Credit Cards

¡¡Muchas gracias!!

Anuncios

Un pensamiento en “EXTRAER CUALQUIER PALABRA DE UNA CADENA DE TEXTO

¿Te ha gustado?. Deja un comentario

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s