我想使用 Excel VBA 拆分具有多个分隔符的字符串。其中一个字符串是:
Raw String: Surat/Gujarat-India-East(Asia)+Earth.
Intended Result: Surat Gujarat India East Asia Earth.
Run Code Online (Sandbox Code Playgroud)
问题是我们在记录宏时不能使用多个其他分隔符。
任何帮助将不胜感激。
这是一种易于理解和添加的方法。
它只是将所有分隔符更改为空格,最后删除所有双空格。
将其放入MODULE中。
Sub test()
Dim s As String
s = "Surat/Gujarat-India-East(Asia)+Earth"
s = Replace(s, "/", " ")
s = Replace(s, "(", " ")
s = Replace(s, ")", " ")
s = Replace(s, "+", " ")
s = Replace(s, "-", " ")
s = Replace(s, " ", " ")
Debug.Print s
' Then if you want to actually split it...
Dim v As Variant
v = Split(s, " ")
End Sub
Run Code Online (Sandbox Code Playgroud)
要将其用作返回数组的函数,该数组也可用于设置范围:
Function GetTest(s As String)
's = "Surat/Gujarat-India-East(Asia)+Earth"
s = Replace(s, "/", " ")
s = Replace(s, "(", " ")
s = Replace(s, ")", " ")
s = Replace(s, "+", " ")
s = Replace(s, "-", " ")
s = Replace(s, " ", " ")
GetTest = Split(s, " ")
End Function
Run Code Online (Sandbox Code Playgroud)
把你的字符串放进Surat/Gujarat-India-East(Asia)+Earth
去A1
然后在 中B1
,输入=GetTest(A1)