Como separar una cadena con blancos

05/01/2008 - 17:14 por marta.noriega84 | Informe spam
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!!!!

Preguntas similare

Leer las respuestas

#1 excelamedida
05/01/2008 - 17:47 | Informe spam
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


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!!!!
Respuesta Responder a este mensaje
#2 Supernori
05/01/2008 - 18:02 | Informe spam
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!!!!!!!!!!!!!!!!!!
Respuesta Responder a este mensaje
#3 Xavier Budet Graco
05/01/2008 - 19:48 | Informe spam
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

Quitar MAC para contestar. Gracias.


escribió en el mensaje news:
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!!!!
Respuesta Responder a este mensaje
#4 julian-vlc-sp
05/01/2008 - 20:36 | Informe spam
¡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" escribió en el mensaje
news:%
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

Quitar MAC para contestar. Gracias.


escribió en el mensaje
news:
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!!!!
Respuesta Responder a este mensaje
#5 Supernori
05/01/2008 - 20:41 | Informe spam
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 restandoweno, un rollo,
pero así mejor, porque no nos dejan usar código!!!
Gracias de nuevo
Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida