读取单元格的字符出现乱码
我的电脑操作系统和Excel都是繁体版,当出现简体字时,在VBA中读取单元格的字符就会把简体字都读取为“?”:
例如:[A1]=“我是中国人”
msgbox [A1]
结果显示“我是中?人”
请各位大侠帮忙解决
[解决办法]
因为繁体里“国”字是“國”
你的代码需要处理GB2312转BIG5
还有你的系统里需要有对简体中文编码的支持。
[解决办法]
简繁体互换 GB<=>BIG5
'****** 简繁体互换 GB-->Unicode-->BIG5 _
Or BIG5-->Unicode-->GB *****************
'参数sStr为需要转换的文本
'参数iConver为要转化的类型,为1时表示繁体到简体的转换,为2时表示简体到繁体的转换
Function GBBIG5(sStr As String, iConver As Integer) As String
On Error Resume Next
Dim STR
If iConver = 1 Then 'BIG5-->GB
STR = StrConv(sStr, vbFromUnicode, &H804)
GBBIG5 = StrConv(STR, vbUnicode, &H404)
ElseIf iConver = 2 Then 'GB-->BIG5
STR = StrConv(sStr, vbFromUnicode, &H404)
GBBIG5 = StrConv(STR, vbUnicode, &H804)
End If
End Function
[解决办法]
请问下楼主,简体中文在你的繁体Excel显示时是正常的吧?
[解决办法]
编码问题 但不知道怎么解决 顶一下
[解决办法]
强制转换为STRING 输出
CStr([A1])
[解决办法]
http://download.csdn.net/source/3012946
http://download.csdn.net/source/1785343