excel - OpenCurrentDatabase 的运行时错误 7866

标签 excel vba ms-access

当我运行下面的代码时,我收到运行时错误7866:

Microsoft Access 无法打开数据库,因为该数据库丢失或被其他用户以独占方式打开,或者它不是 ADP 文件。

该行抛出错误 db.OpenCurrentDatabase“C:\Users\QE9142\Desktop\VES Mgmt Reports ONLY.mdb”

我正在尝试通过 Excel 打开保存在桌面上的 Access 数据库。

Sub Task()

Dim db As Access.Application
Dim strDB As String
Set db = New Access.Application
db.OpenCurrentDatabase "C:\Users\QE9142\Desktop\VES Mgmt Reports ONLY.mdb"
db.Application.Visible = True

End Sub

最佳答案

我无法复制此错误,但当代码退出时,Access 也会退出。

插入将保存代码的 STOP 或其他事件:

Sub Task()

    Dim db As Access.Application
    Dim strDB As String

    Set db = New Access.Application
    db.OpenCurrentDatabase "C:\Users\QE9142\Desktop\VES Mgmt Reports ONLY.mdb"
    db.Application.Visible = True
    Stop    

End Sub

至于错误,请尝试在Access中打开mdb并将其另存为accdb文件(Access 2007格式)。

关于excel - OpenCurrentDatabase 的运行时错误 7866,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57275122/

相关文章:

ms-access - 为什么我的记录没有按照执行顺序插入?

vba - 不区分大小写的字典

sql - 使用 select 和 where 子句更新查询

ms-access - 在 MS Access 中跳过 CSV 文件的前三行(使用 DoCmd?)

php - 使用 PHPExcel 读取包含合并单元格的 Excel 工作表

vba - Excel VBA - 粘贴到标题下方

excel - 如何在 VBA 函数的 VBA 函数结果上强制使用 NumberFormat?

vba - 如果尚未打开,请打开工作簿;如果已打开,则获取该引用

vba - 如果路径中不存在附件文件,则不应发送邮件

vba - 按字段名称引用列表框列