将vba字符串发送到excel / outlook时如何保持变音符号?

我想就问题发表看法.每次我想发送vba字符串时它都会回复给我,其中包含我的母语变音符号或者外观.

我已经更改了vba编辑器上的字体,因此它在代码中显示正确的标记,并且在工作表/ Outlook消息上手动输入这些标记时工作正常.执行宏时出现问题,就像办公室错误地编码vba发送给程序的动作一样.

例:
我可以在单元格中输入“Ł”字母.

我也可以输入编辑器:

Sub example()
Range("A1").Value = "Ł"
End Sub

但是在执行宏时,范围A1显示“£”.

你知道问题出在哪里吗?

顺便说一句,当我将代码从vba复制到此窗口时也是如此. (代码中的“Ł”变为“£”.

非常感谢!
塞巴斯蒂安.

最佳答案 如果您知道要放在单元格中的字符的Unicode值,则使用ChrW函数,例如:对于带有变音符号的A:

ActiveSheet.Cells(1, 1).Value = ChrW(&H00c4)

请注意,函数的输入是十六进制的.对于你的角色,你想尝试找到Unicode值并在其前面添加& H,让VBA知道你传递的是十六进制值.

点赞