我们有一个Excel电子表格,通过vba odbc连接(用户名和密码* d)连接到Sage
Set CN = New ADODB.Connection
With CN
.Provider = "MSDASQL"
.ConnectionString = "DSN=SageLine132;UID=******;PWD=******;"
.CursorLocation = adUseClient
.Open
End With
此连接在我们的32位Windows xp计算机上运行时可以正常使用Office 2010,但不适用于运行Office 2010 32位的新Windows 7 64位计算机。
当我打开odbc32时在syswow64文件夹中安装了系统DSN。
是否有人在没有访问系统DSN(DSN-Less)的情况下有任何解决方法或连接方式?
答案 0 :(得分:3)
我怀疑这与存储在syswow32/
或syswow64/
中的可执行文件有关。
我从未使用过Sage,但我之前在64b系统上遇到了MyODBC驱动程序的问题,这里的解决方案可能对您有所帮助:
用于win 64b用户(XP,win7),以便访问您的MyODBC驱动程序 (或任何其他数据库驱动程序),您需要运行数据源
%windir%\SysWOW64\odbcad32.exe
。
要使更改成为永久更改,您可以在控制面板中添加新的数据源图标(必须从资源管理器执行此操作,因为它会提示您进行确认),将其命名为Data Sources x64,并将其指向{{1 }}
有关完整文章,请参阅here。