簡體   English   中英

從字符串中提取數字組並將其分開

[英]Extract number groups from a string and separate them

我有一個VBA宏,可從字符串中提取數字序列並將其分開。
例如,單元格A1的值是Order No.2 123 Order No.3 234 Order No.4 345
在宏之后,單元格B1的值應為123, 234, 345
由於Order No.A BBB號為A & BBBA & BBB的字符數不是固定的,例如, Order No.324 1814406 ,我不能使用left函數來清除特定數量的字符來解決問題。 有人可以給我一些建議嗎?

如果可以為您澄清任何事情,請告訴我。
下面是我現在擁有的宏,它可以清除非數字char並返回2, 123, 3, 234, 4, 345

Sub Testing()
str = Range("A1")
For x = 1 To Len(Range("A1"))
    If Not IsNumeric(Mid(str, x, 1)) Then 
        Mid(str, x) = " "
    End If
Next x
    Range("B1") = Replace(Application.Trim(str), " ", ", ")
End Sub

也許Split函數可能很有用

Option Explicit

Sub GetData()
    Dim inp As String
    inp = "Order No.221 123 Order No.13 234 Order No.4 345"
    Dim v As Variant
    v = Split(inp, " ")
    Dim i As Long
    For i = LBound(v) + 2 To UBound(v) Step 3
        Debug.Print v(i)
    Next i
End Sub

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM