¿Como obtener de un string los caracteres numéricos separados por * e introducirlos en variables?

Tengo un string con caracteres alfanuméricos, cada número va seguido de un *.
Quiero extraer estos números y colocarlos en variables llamadas Numero (string)
Para: 214*215*216*217*S
Numero(1)=214
Numero(2)=215
Numero(3)=216
Numero(4)=217
Para: 21*22*T
Numero(1)=21
Numero(2)=22
Para: 5*P
Numero(1)=5
Si se os ocurre alguna otra forma de hacerlo, acepto propuestas.
Gracias por compartir conocimientos!
Pd: Dale a un hambriento un pez y comerá un día... Enséñale a pesca y comerá todos los días.

Respuesta
2

Te dejo un código que te puede servir, usa la función split(), para separar una cadena y la función IsNumeric() para tomar sólo los números.

Sub sCadenas()
Dim TestString As String '= "214*215*216*217*S"
Dim TestArray() As String '= Split(TestString)
Dim NumArray() As Integer
Dim LastNonEmpty As Integer
Dim I As Integer
LastNonEmpty = 0
TestString = "214*215*216*217*S"
TestArray() = Split(TestString, "*")
ReDim Preserve NumArray(UBound(TestArray) + 1)
For I = 0 To UBound(TestArray)
    If IsNumeric(TestArray(I)) Then
        NumArray(LastNonEmpty) = TestArray(I)
        LastNonEmpty = LastNonEmpty + 1
    End If
Next
ReDim Preserve NumArray(LastNonEmpty - 1)
End Sub

1 respuesta más de otro experto

Respuesta
2

Para separar datos utilizando un delimitador se utiliza la sentencia split, por ejemplo:

Sub separar()
    dato = "214*215*216*217*S"
    numeros = Split(dato, "*")
    For i = 0 To UBound(numeros)
        If IsNumeric(numeros(i)) Then
            MsgBox numeros(i)
        End If
    Next
End Sub

.

'S aludos. Dante Amor. Recuerda valorar la respuesta. G racias

.

Avísame cualquier duda

.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas