在 Access 中使用 CurrentProject.Connection 或 CurrentDB.Connection 时出现连接错误

原始 KB 数: 2459087

症状

在 Access 中打开数据库时,会收到以下错误消息:

对象“_Current Project”的方法“Connection”失败。

调用 VBA Application.CurrentProject.Connection 或 Application.CurrentDB.Connection 时,会发生此失败。

原因

Access 数据库引擎/Access 连接引擎(ACE)包含在除 Microsoft Access 以外的许多产品,例如 Microsoft Visio 和 Microsoft Project。 如果安装的 ACE 版本不同于 Access 版本,注册表中的ACEOLEDB.DLL路径可能不会指向相应的 ACE 版本。

决议

应该可以通过运行 Office 或 Access 安装修复来解决此问题。

或者,可以修改注册表项,更改 dll 路径以匹配 Access 版本的路径。

注释

Access 2007 - OFFICE12、Access 2010 - OFFICE14、Access 2013 - OFFICE15和 Access 2016 - OFFICE16。

微软安装包 (MSI) 安装

(OS:64 位和 Office:64 位)或(OS:32 位和 Office:32 位)

键:HKCR\CLSID\{3BE786A0-0366-4F5C-9434-25CF162E475E}\InprocServer32\

值名称:(默认值)

值数据: C:\Program Files\Common Files\Microsoft Shared\OFFICE15\ACEOLEDB.DLL

(OS:64 位和 Office:32 位)

键:HKCR\Wow6432Node\CLSID\{3BE786A0-0366-4F5C-9434-25CF162E475E}\InprocServer32\

值名称:(默认值)

值数据: C:\Program Files (x86)\Common Files\Microsoft Shared\OFFICE15\ACEOLEDB.DLL

Click-2-Run 安装

(OS:64 位和 Office:64 位)或(OS:32 位和 Office:32 位)

键:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\ClickToRun\REGISTRY\MACHINE\Software\Classes\CLSID\{3BE786A0-0366-4F5C-9434-25CF162E475E}\InprocServer32

值名称:(默认值)

值数据: C:\Program Files\Common Files\Microsoft Shared\OFFICE15\ACEOLEDB.DLL

(OS:64 位和 Office:32 位)

键:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\ClickToRun\REGISTRY\MACHINE\Software\Classes\Wow6432Node\CLSID\{3BE786A0-0366-4F5C-9434-25CF162E475E}\InprocServer32

值名称:(默认值)

值数据: C:\Program Files (x86)\Common Files\Microsoft Shared\OFFICE15\ACEOLEDB.DLL