2

我们有一个 Excel 电子表格,它通过 vba odbc 连接(用户名和密码 *'d)连接到 Sage

Set CN = New ADODB.Connection
With CN
    .Provider = "MSDASQL"
    .ConnectionString = "DSN=SageLine132;UID=******;PWD=******;"
    .CursorLocation = adUseClient
    .Open
End With

此连接在我们的装有 office 2010 的 32 位 windows xp 计算机上运行良好,但在运行 office 2010 32 位的新 windows 7 64 位计算机上无法正常工作。

当我打开 syswow64 文件夹中的 odbc32 时,系统 DSN 已安装。

是否有人对此有任何解决方法或无需访问系统 DSN(DSN-Less)即可连接的方法?

4

1 回答 1

3

我怀疑这与存储在syswow32/or中的可执行文件有关syswow64/

我从未使用过 Sage,但我之前在 64b 系统上遇到了 MyODBC 驱动程序的问题,这里的解决方案可能会对您有所帮助:

对于 win 64b 用户(XP、win7),为了访问您的 MyODBC 驱动程序(或任何其他 DB 驱动程序),您需要从 %windir%\SysWOW64\odbcad32.exe.

在此处输入图像描述

要使更改永久生效,您可以在控制面板中添加一个新的数据源图标(必须从资源管理器中执行此操作,因为它会提示您确认),将其命名为 Data Sources x64,并将其指向%windir%\SysWOW64\odbcad32.exe

在此处输入图像描述

有关完整的文章,请参见此处

于 2012-08-21T15:30:11.483 回答