Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Como separar una cadena con blancos

21 views
Skip to first unread message

marta.n...@gmail.com

unread,
Jan 5, 2008, 11:14:22 AM1/5/08
to
Tengo un problema bastante gordo, y necesito ayuda!!
Tengo que entregar una práctica en la que me pide que separe una
cadena de caracteres de una numérica, que se encuentran en la misma
celda, pero el problema es el siguiente: se trata de nombres, en
muchos casos compuestos, que van acompañados del número de veces que
se le puso ese nombre a un bebé el año pasado.
El problema es que podría contar hasta el blanco, o hasta que sea
número, pero lo primero no me sirve porque hay nombres compuestos con
un blanco en el medio, y lo segundo, o no se usarlo, o no me funciona.
El contenido de las celdas es más o menos así: MARIA 12

LUIS ALFONSO 1234545
Si me lo pudierais solucionar me salvariais el pescuecillo, porque la
tengo que entregar ya!!!
Muchas gracias!!!!

excela...@gmail.com

unread,
Jan 5, 2008, 11:47:12 AM1/5/08
to
Hola.
Con este código muestra sólo el nombre estén donde estén los números.

Este código insertalo en un módulo normal:

Function Textos(x As String)
Dim r As String, j As Integer
For j = 1 To Len(x)
If Mid(x, j, 1) < "0" Or Mid(x, j, 1) > "9" Then
r = r & Mid(x, j, 1)
End If
Next j
Textos = r
End Function

Si por ejemplo en A1 tienes el nombre con los números y quieres el
resultado en B1, tienes que poner en B1 =Textos(A1)
Después puedes copiar y pegar la formula a tu gusto/necesidades

Un saludo
JJE

Supernori

unread,
Jan 5, 2008, 12:02:42 PM1/5/08
to
Hummmmmmmm!!!!!!
Muchas gracias, lo usaré...pero como última cosa, porque no me dejan
tocar código...son así de tristes!!!
Así que seguiré buscando la función a ver cómo la saco, que estoy
intentandolo contando los caracteres desde la derecha hasta que
encuentre un blanco, a ver si cuela.
Gracias de todas formas!!!!!!!!!!!!!!!!!!

Xavier Budet Graco

unread,
Jan 5, 2008, 1:48:26 PM1/5/08
to
Hola Marta; he supuesto que tienes la cadena de caracteres en A1 y que el número SIEMPRE está al final, si no es así habrás de modificar la fórmula, pon en A2 la siguiente fórmula:
=IZQUIERDA(A1;HALLAR("|";SUSTITUIR(A1;" ";"|";LARGO(A1)-LARGO(SUSTITUIR(A1;" ";""))))-1)

y luego arrastra (copia) hacia abajo.

Yo utilizo el ";" como separador, si no es el tuyo lo modificas. Puede haber un problema pequeño si entre la última palabra y el número hay más de un espacio (comentas).

--
Saludos,

Xavier
j.b...@MACcgac.es
Quitar MAC para contestar. Gracias.


<marta.n...@gmail.com> escribió en el mensaje news:25a41ffe-7c10-4516...@i12g2000prf.googlegroups.com...

Supernori

unread,
Jan 5, 2008, 2:41:03 PM1/5/08
to
GRACIAS!!!!!!!
Me ha sido de muchisima ayuda!!!
Lo había hecho con una función propia, invirtiendo la cadena y
calculando hasta el primer espacio y luego restando....weno, un rollo,
pero así mejor, porque no nos dejan usar código!!!
Gracias de nuevo

julian-vlc-sp

unread,
Jan 5, 2008, 2:36:40 PM1/5/08
to
===========================================
¡Importante!: Colabora con el grupo.Contesta a este mensaje
y dinos si te sirvió o no la respuesta dada. Muchas gracias.
===========================================

Y gracias a la aportación de Xavi, si en otra celda quieres el numero, y
suponiendo que A2 tienes la fórmula de Xavi, puedes poner en otra celda lo
siguiente:

=EXTRAE(A1;HALLAR("|";SUSTITUIR(A1;" ";"|";LARGO(A1)-LARGO(SUSTITUIR(A1;"
";""))))+1;LARGO(A1))

o

=SUSTITUIR(A1;A2&" ";"")


SALUDOS.
Julián-Valencia-España
http://ijulian.iespana.es/


"Xavier Budet Graco" <j.b...@MACcgac.es> escribió en el mensaje
news:%23m2Oiu8...@TK2MSFTNGP04.phx.gbl...

Xavier Budet Graco

unread,
Jan 5, 2008, 5:41:22 PM1/5/08
to
de nada ;-) , y lee el correo de Julian por si necesitas extraer el número.

--
Saludos,

Xavier
j.b...@MACcgac.es
Quitar MAC para contestar. Gracias.

"Supernori" <marta.n...@gmail.com> escribió en el mensaje news:b68bfc1e-de40-4ae7...@e10g2000prf.googlegroups.com...

0 new messages