Macron在VBA编辑器中

时间:2008-10-15 07:06:19

标签: vba unicode

使用VBA创建一个简单的程序,我可以用它来检查中文词汇。

到目前为止,我已经做了很多工作,但是在输入一个像“ā”(unicode 257)这样的宏字符时遇到了一个巨大的问题。我正在处理的具体应用程序涉及更改文本框表单的内容,以便在我键入文本框时自动替换“a”。这样的程序本身很简单 - 我可以使用拼音字符“á”和“à”来使用它。

Select Case testchar
    Case "a"
    Mid(strclip, markloc, 1) = "ā"
End Select

之前的尝试是使用Mid函数将文本框字符串中的一个字符替换为来自用户的适当提示的拼音字符。

挂断是我无法进入VBA的“ā”!我一直在寻找互联网,但这似乎不是任何人的问题。当我在VBA编辑器中并输入alt + 0257时,没有任何反应。我也无法从记事本中复制粘贴..我准备废弃VBA并用其他语言重做此应用程序..

干杯

2 个答案:

答案 0 :(得分:3)

您可以使用ChrW生成Unicode字符:

Mid(strclip, markloc, 1) = ChrW(257)

答案 1 :(得分:0)

我的机器上没有安装ms-office来试用它 但是,您可以使用带有Unicode参数的StrConv函数(以及LCID)将unicode内容放入文本框中。

请注意,VB6样式控件不接受unicode值。
如果要在VBA编辑器中创建表单,它应该可以工作(因为它使用Forms 2.0库)。