Excel VBA形成TextFrame字符文本字符集
我插入文本框到我的Excel 2013文档并放置一些文本
正体字/繁体字
与UTF-8符号在文本框中看起来不错,但是当我试图用命令msgbox它
MsgBox ActiveSheet.Shapes("Textbox 1").TextFrame.Characters.Text
我有类似的东西
??? / ???
那么如何设置UTF_8字符集来正常取得这个文本在msgbox或variables?
你可以创build一个看起来像一个MsgBox,并像MsgBox一样的function ,但可以更好地处理UniCode:
Public Declare Function MessageBoxU Lib "user32" Alias "MessageBoxW" _ (ByVal hwnd As Long, _ ByVal lpText As Long, _ ByVal lpCaption As Long, _ ByVal wType As Long) As Long Sub MsgBoxSubstitute() Dim s As String s = ChrW(8451) MessageBoxU 0, StrPtr(s), StrPtr("MsgBox Substitute"), 0 End Sub
使用Windows API。 注意它有一个很好的内置机制来消除消息。
唯一的解决方法是创build一个表单并在标签中显示您的消息。 我认为标签是UTF-8启用。