我编写了两个 VBA 插件Excel (Office 2011, Mac)
:第一个“基本”插件还为第二个插件提供功能。以后还会有其他插件使用基本插件的功能……应该可以只运行基本插件,第二个插件是可选的。
在第二个插件中,我试图添加这样的引用:
Public Sub Workbook_Open()
Application.VBE.VBProjects("SecondAddin").References.AddFromFile ("BasicAddin.xlam")
UseFunctionFromBasicAddin
End Sub
Private Sub UseFunctionFromBasicAddin()
FunctionFromBasicAddin
End Sub
但是,这在启动 Excel 时给了我一个运行时错误:Run-time error 91: Object variable or With block variable not set.
当我在出现此错误后打开 VBA 编辑器时,我可以看到现在在 SecondAddin 中正确引用了 BasicAddin.xlam - 当我UseFunctionFromBasicAddin()
在 VBA 编辑器中执行它时,它可以工作。它只是在启动 Excel 时不起作用。
在 VBA 编辑器 (Tools->References) 中添加引用时,加载了两个加载项,但有一个MsgBox: "This workbook is currelty referenced by another workbook and cannot be closed."
但是,我想以编程方式添加引用,因为我怀疑在具有不同路径的不同计算机上使用插件时链接会中断?
我很乐意提供有关如何消除运行时错误的建议(或者是否有更好的方法来管理不同的加载项?)...!