Excel VBA删除字符串中的Unicode字符

Jee*_*van 4 unicode excel vba non-ascii-characters

如何删除VBA中不属于ASCII类别的所有特殊字符?

这些是我的字符串中出现的一些符号,需要将其删除.ŒœŠšƒ还有更多这样的角色.

这不属于ASCII类别,因为您可以看到这个http://www.ascii.cl/htmlcodes.htm

我试过这样的事

strName = Replace(strName, ChrW(376), " ")
Run Code Online (Sandbox Code Playgroud)

但它不起作用.

请帮我解决这个问题.

谢谢Jeevan

小智 6

你会对RegEx解决方案感兴趣吗?

这个站点上有很多不同语言的例子 - 这里是C#one:如何从字符串中删除非ASCII字符?(在C#中).

试试这个VBA:

Private Function GetStrippedText(txt As String) As String
    Dim regEx As Object

    Set regEx = CreateObject("vbscript.regexp")
    regEx.Pattern = "[^\u0000-\u007F]"
    GetStrippedText = regEx.Replace(txt, "")

End Function
Run Code Online (Sandbox Code Playgroud)