【发布时间】:2016-08-29 16:15:54
【问题描述】:
如何删除 VBA 中所有不属于 ASCII 类别的特殊字符?
这些是我的字符串中出现的一些符号。
Œ – Š š Ÿ ƒ
这样的角色还有很多。
这些不属于 ASCII 类别,您可以在此处看到 http://www.ascii.cl/htmlcodes.htm
我试过这样的
strName = Replace(strName, ChrW(376), " ")
【问题讨论】:
-
术语:如您所知,Unicode 是 ASCII 的超集。但是,ASCII 字符位于所谓的“块”中,而不是Unicode category;特别是C0 Controls and Basic Latin 块。
-
仅供参考 ChrW CharCode 参数是一个
Long,用于标识一个字符,但不允许值大于65535(十六进制值&HFFFF)。找到克服这一限制的系统方法可能具有一定的实际意义 - c.f. Get UniCode characters with CharCode greater hex FFFF 的六个解决方案,例如在 Unicode 块中1F300-1F5FF"杂项符号和象形文字" :-)
标签: excel vba unicode non-ascii-characters