Excel VBA 新应用程序对象的自动化错误

Excel VBA automation error with new application object

我有一个复杂的项目多年来工作得很好。

但是最近我开始收到以下运行时错误:

Microsoft Visual Basic

Run-time error '-2147319765 (8002802b)':

Automation error Element not found

我已将其归结为最简单的子程序,如下所示:

Sub test()
    Dim xl As Excel.Application
    Set xl = New Excel.Application ' the error occurs on this line
End Sub

参考标准安装。由于某种原因,系统不允许我添加屏幕截图。现在 VBA 版本 7.1 - 我不知道这是否有任何区别。这是一个公司环境,对员工可以做的事情有很多限制:所以我无法安装新的 .ddl 等。

Dim xl as Object 
Set xl = CreateObject("Excel.Application." & CLng(Application.Version))

这只是打开新 Excel 应用程序的另一种方法,但它解决了用户安装了多个 Excel 版本的问题,方法是专门调出您要打开的版本。

通常写成“Excel.Application.12”,其中末尾的数字是您已安装并要打开的 excel 的版本。 11 是 Excel 2003 年,12 是 Excel 2007 年,16 是最近的东西。

我用 Application.Version 替换了那个数字,表示打开您已经在使用的版本。