我正在使用VBA运行一个宏,它试图对postgresql数据库执行查询。当我在Excel 2013(版本15.0.4649.1000 32位)上运行代码时,代码工作正常。但是,当我尝试使用MS Office Professional Plus 2010,Excel版本14.0.7015.1000(32位)在另一台计算机上运行相同的代码时,它会给我以下错误
我不确定这个问题的原因是什么以及如何解决。任何人都可以帮忙。
提前致谢 AM
答案 0 :(得分:0)
您在Excel 2013中使用了Unicode驱动程序。在另一台获得错误的计算机上,您使用了ANSI驱动程序。
数据库包含utf-8序列0xef 0xac 0x81
,它是Unicode U + 0FB1, fi 连字。这在WIN1252(类似latin-1)编码中不存在。
如果您的数据库包含的文本不限于特定的ANSI代码页,则应始终使用Unicode驱动程序。除非您使用需要它的旧版应用程序,否则使用ANSI驱动程序通常没用。