
我需要用雙引號替換不可列印的字符“
問題是,這個壞字符Chr(25)可以出現在數字之后,一次或兩次,甚至出現在數字和雙引號之后”
如果我使用 excel clean 功能,那將洗掉所有 Chr( 25) 而不是更換它。
Range("C2") = WorksheetFunction.Clean(Range("B2"))
我也嘗試使用 vba Replace 功能,但問題再次是不可列印字符的計數和位置:
Range("C2") = Replace(Range("B2"), Chr(25) & Chr(25), """")
'如果 Chr(25) 是單一的,則此代碼將替換并再次添加
在此先感謝您的所有幫助。
uj5u.com熱心網友回復:
我建議使用正則運算式來捕獲和替換這些字符:
Function RegexReplace(s As String) As String
With CreateObject("vbscript.regexp")
.Pattern = "(\d )[""']*\u0019 "
.Global = True
RegexReplace = .Replace(s, "$1""")
End With
End Function
查看該模式的在線
中的公式B1:
=RegexReplace(A1)
注意:如果您不需要指定數字,您可以(\d )省略,只需["']*\u0019 簡單替換單個".
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/487452.html
