Visual Basic - Sacar numeros de una cadena

Life is soft - evento anual de software empresarial
 
Vista:

Sacar numeros de una cadena

Publicado por ppg (7 intervenciones) el 27/08/2008 21:38:06
Tengo una cadena sacada con un mshflexgris.clip y me la devuelve con tabulaciones, por ejemplo

1-23-4-567-23 etc (El - simboliza el tabulador)
¿Como sacar los números por separado ?

a(1)=1
a(2)=23
a(4)=4
etc

Gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Sacar numeros de una cadena

Publicado por pacopaz (173 intervenciones) el 27/08/2008 22:01:13
la respuesta es la función 'split'. De esta forma:

Dim A As Variant
Dim i As Integer
a = Split("1-2342-12-212-2", "-")
For i = 0 To UBound(a)
'Cualquier cosa que quieras hacer con los números, está en el valor a(i)
Next i

donde
[Cadena] es lo que quieres separar.
El separador es un guión (-), que se especifica en el segundo parámetro y lo hago así, según tu ejemplo.
A será un arreglo variable, donde se pondrán los valores separados.
El ciclo te ayudará a recorrer todos los valores.

Espero que te sirva.

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Sacar numeros de una cadena

Publicado por ppg (7 intervenciones) el 28/08/2008 21:14:57
Me funciona a medias porque en el clip se meten los tabuladores y el salto de linea, y cuando hago lo que me dices, solo separa por el caracter que elija (uno de ellos) y no por los dos, y claro está que no se que posiciones tiene ya que la cadena es variable.
General.FDG1.Clip = rsTrios.GetString(adClipString, -1, Chr(9), Chr(13), vbNullString)
Se te ocurre algo ??
Gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Sacar numeros de una cadena

Publicado por pacopaz (173 intervenciones) el 28/08/2008 21:40:31
Lo que se me ocurre, master, es que una vez que tengas la cadena, con tabuladores y cambios de línea, sustituyas el Chr(13) por el Chr(9) y así tengas un solo caracter para separar: Chr(9).

Espero que te sirva.

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar