yur*_*uro 5 excel vba excel-vba str-replace
如何在字符串变量中替换多个东西?
这是我在vba中的示例函数:
Private Function ExampleFunc(ByVal unitNr$) As String
If InStr(unitNr, "OE") > 0 Then
unitNr = Replace(unitNr, "OE", "")
unitNr = Replace(unitNr, ";", "")
End If
...
End Function
Run Code Online (Sandbox Code Playgroud)
有更好的解决方案吗?
您可以使用数组并循环其元素:
Sub MAIN()
Dim s As String
s = "123456qwerty"
junk = Array("q", "w", "e", "r", "t", "y")
For Each a In junk
s = Replace(s, a, "")
Next a
MsgBox s
End Sub
Run Code Online (Sandbox Code Playgroud)
垃圾的每个元素可以是子字符串或单个字符.
小智 5
如果只是几个字符,那么我会选择 Marco,但使用 VBA:
unitNr = Replace(Replace(unitNr, "OE", ""), ";", "")
Run Code Online (Sandbox Code Playgroud)