Pregunta

Tengo alrededor de 100 filas de texto que quiero tokenize, que son iguales lo siguiente:

<word> <unknown number of spaces and tabs> <number>

Estoy teniendo problemas para encontrar funciones no simbólica con VBA. ¿Cuál sería el método más fácil para tokenize dichas cadenas en VBA?

¿Fue útil?

Solución

Usted puede leer línea por línea y utilizar la función de división para dividir la palabra y el número por el espacio. Vagamente remeber VBA tiene la función de división.

Tengo el siguiente enlace mediante la búsqueda en Google. No está seguro de qué versión de la oficina que está utilizando.

http://msdn.microsoft.com/ en-us / library / aa155763 (office.10) .aspx

Este enlace tiene la función de división.

Otros consejos

Puede utilizar el método Split() o para los partidos más complejas, puede utilizar el objeto "vbscript.regexp":

Sub NewRegex()
    Dim reg
    Dim matches, match, tmpStr As String

    Set reg = CreateObject("vbscript.regexp")
    tmpStr = "blah bla ...."

    With reg
        .IgnoreCase = True
        .MultiLine = False
        .Pattern = "your regex pattern goes here"
        .Global = True
    End With

    Set matches = reg.Execute(tmpStr)

    For Each match In matches
        MsgBox match
    Next mt

End Sub

Aquí hay un tutorial sobre el uso de expresiones regulares de VBA: El uso de expresiones regulares (RegExp) en Excel

VBA función de división derecha de la página de MS

http://msdn.microsoft.com/ en-us / library / aa155763 (office.10) .aspx

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top