Imprimir página | Cerrar ventana

Separar años de un texto

Impreso de: Foro de Access y VBA
Categoría: Otros de Microsoft: Windows y Office
Nombre del foro: Excel
Descripción del foro: Foro de Excel y VBA de Excel
URL: http://www.mvp-access.com/foro/forum_posts.asp?TID=85234
Fecha de impresión: 26/Marzo/2026 a las 20:58


Tema: Separar años de un texto
Publicado por: noise56
Asunto: Separar años de un texto
Fecha de publicación: 03/Mayo/2020 a las 10:36
Buenos días amigos.
Tengo un problemilla y quería a ver si alguien puede ayudarme, por favor.
En una base de datos de mi discografía que tengo hecha en Word, cuyo formato es el siguiente:

BRUCE LOFGREN - BRUCE LOFGREN JAZZ TRIO (2008)

CHRIS EDWARDS - THERE WAS A TIME (2012)

DAVE CHASTAIN - ROCK SOLID GUITAR (2001)

(Esto es: Autor, título del disco y año de lanzamiento del mismo).

Bien, lo que pretendo es, si se puede hacer claro está, es copiarlo todo en Excel, eso no es problema ninguno. Pero me gustaría que después de pegar los datos en Excel, poder extraer los años de lanzamiento y alinearlos todos en una misma columna, tengo miles de líneas por lo que hacerlo uno a uno es un trabajo de monos, y aquí ya es donde me pierdo.

No sé si habría alguna fórmula o método para poder hacerlo, si alguien puede decírmelo o explicármelo se lo agradecería. Gracias de antemano.

Saludos.




Respuestas:
Publicado por: Mihura
Fecha de publicación: 03/Mayo/2020 a las 10:51
- con Mid$ puedes extraer una cadena de otra
- con Instr puedes averiguar dónde está una cadena (o carácter) dentro de otro

Combinando ambas lo tienes, averiguas dónde está el (, le sumas 1 y tienes la posición de inicio, extraes cuatro caracteres y ya tienes el año.




-------------
Jesús Mansilla Castells.
Saludos desde Móstoles.

http://www.accessaplicaciones.com" rel="nofollow - Access Aplicaciones
http://www.tecsys.es" rel="nofollow - Tecsys.es


Publicado por: noise56
Fecha de publicación: 03/Mayo/2020 a las 10:55
Gracias por tu pronta respuesta.
Uuufff... lo siento pero mi nivel en Excel es muy básico y no sé exactamente cómo debo hacer eso.
No te importa explicármelo más detalladamente, por favor.
Gracias.


Publicado por: Mihura
Fecha de publicación: 03/Mayo/2020 a las 11:11
Como siempre, no miré el foro en el que está la pregunta y he creído que era VBA. Sorry.  Ouch

Lo que te he dicho sigue valiendo, sustituye Mid$ por EXTRAE y Instr por HALLAR y ya tienes las instrucciones a usar. En cuánto sigas los pasos que te pide el Excel al poner las funciones lo sacas.


-------------
Jesús Mansilla Castells.
Saludos desde Móstoles.

http://www.accessaplicaciones.com" rel="nofollow - Access Aplicaciones
http://www.tecsys.es" rel="nofollow - Tecsys.es


Publicado por: noise56
Fecha de publicación: 03/Mayo/2020 a las 11:42
Jesús, creo que esas funciones se pueden aplicar cuando el número de caracteres y sus posiciones, son iguales y bien delimitados en todas las lineas, pero no es mi caso. Como comprobarás, no todas mis lineas tienen la misma cantidad de caracteres, ni el año está situado en la misma posición. Aplicando tu sugerencia, habría que copiar la fórmula y luego modificarla en todas las lineas.
No sé, pero según lo que he podido comprobar es lo que creo.



Publicado por: xavi
Fecha de publicación: 03/Mayo/2020 a las 11:49
¿lo has probado? Me temo que estas confundiendo HALLAR con ENCONTRAR.


-------------
Xavi, un minyó de Terrassa

http://www.llodax.com" rel="nofollow - Mi web


Publicado por: Mihura
Fecha de publicación: 03/Mayo/2020 a las 11:50
No, la fórmula es única para todas las celdas. Lo que tienes que averiguar es dónde tienes el paréntesis de apertura ( y para eso está la función HALLAR.

Para no liarte al aprender hazlo en dos pasos:
- en una columna pon una fórmula para hallar dónde está el paréntesis
- en otra combinas ese valor con la función EXTRAE

Para finalizar ya lo pondrás en una única celda.




-------------
Jesús Mansilla Castells.
Saludos desde Móstoles.

http://www.accessaplicaciones.com" rel="nofollow - Access Aplicaciones
http://www.tecsys.es" rel="nofollow - Tecsys.es


Publicado por: noise56
Fecha de publicación: 03/Mayo/2020 a las 12:17
Bueno, creo que no me he explicado bien, Jesús, lo siento.
A ver... Yo tengo en la celda A1, por ejemplo, lo siguiente:

THE PINE BOX BOYS - ARKANSAS KILLING TIME (2005)

En la celda A2:

TIM O'BRIEN - THE CROSSING (1999)

Y así sucesivamente, miles de lineas. Como ves, la posición del paréntesis de apertura no es la misma en todas las lineas. Cómo se soluciona ??.


Publicado por: Mihura
Fecha de publicación: 03/Mayo/2020 a las 12:19
Xaví, ya sois dos los que me decís lo de ENCONTRAR (el Encanto es el otro) ... Tongue

A mi me funciona con HALLAR (recordad que yo de Excel lo justito Unhappy).

PEPE (2003) 2003
JUAN(1134) 1134
LU(3456) 3456
El cantor de Jazz (2020) 2020



Ed. Por cierto W10 + Office 2010


-------------
Jesús Mansilla Castells.
Saludos desde Móstoles.

http://www.accessaplicaciones.com" rel="nofollow - Access Aplicaciones
http://www.tecsys.es" rel="nofollow - Tecsys.es


Publicado por: Mihura
Fecha de publicación: 03/Mayo/2020 a las 12:24
noise56,

Si que te leí bien, .. eres tú el que no me está leyendo bien a mi Wink.

Usa ENCONTRAR (a mi me funciona perfectamente con HALLAR, que un par de compis me han abroncado Ouch) para encontrar -nunca mejor dicho- dónde está el primer paréntesis.




-------------
Jesús Mansilla Castells.
Saludos desde Móstoles.

http://www.accessaplicaciones.com" rel="nofollow - Access Aplicaciones
http://www.tecsys.es" rel="nofollow - Tecsys.es


Publicado por: noise56
Fecha de publicación: 03/Mayo/2020 a las 12:48
Bieeen... conseguido !!.
Con mi nivel en Excel es todo un logro, me ha costado un pelín pero lo conseguí, combinando EXTRAE y ENCONTRAR.
Se me olvidó decirte que uso Office 2007 en Windows 10
Gracias Jesús, muy amable. Muchas gracias. Thumbs Up

Podemos cerrar este hilo.
Un abrazo.


Publicado por: Mihura
Fecha de publicación: 03/Mayo/2020 a las 12:51
Clap

-------------
Jesús Mansilla Castells.
Saludos desde Móstoles.

http://www.accessaplicaciones.com" rel="nofollow - Access Aplicaciones
http://www.tecsys.es" rel="nofollow - Tecsys.es



Imprimir página | Cerrar ventana