将变量声明为Excel.Application时,无法通过VBA启动Excel实例,但是如果将其声明为Object,则可以

问题描述

我们最近从Inventor 2017-> 2021进行了升级,现在某些VBA代码不再起作用。 一切归结为无法通过Inventor的VBA正确启动Excel.Application(以及Word或Powerpoint)。 请参见下面的代码示例。 我已经正确设置了引用,并且可以将变量声明为Excel.Application。 但是,当我将变量声明为Excel.Application,然后使用CreateObject(“ Excel.Application”)创建对象时,会出现此错误

enter image description here

当我将变量声明为对象时,一切正常。 稍后,我仍然无法将其分配给Excel.Application变量。

我可以完美地使用所有其他变量类型,如Workbook,Range等。 唯一不起作用的是Excel.Application变量。

当我从Excel或Word运行相同的代码时,它可以正常工作。 当我尝试启动其他对象(例如Inventor.Application或AutoCAD.Application)时,不会出现此问题。

应该工作的基本代码,但是不能从Inventor使用,但是可以在Excel / Word中工作:

Sub StartExcel()
    
    Dim oXL As Excel.Application
    Set oXL = CreateObject("Excel.Application")
    
    oXL.Visible = True
    oXL.Workbooks.Add
    
End Sub

有效的代码

Sub StartExcel()
    
    Dim oXL As Object
    Set oXL = CreateObject("Excel.Application")
    
    oXL.Visible = True
    oXL.Workbooks.Add
    
End Sub

有人知道为什么它不起作用吗?

软件详细信息: Inventor版本为2021 Office 365(对象库16.0) VDI Citrix环境Windows 10版本2004

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)