Jon*_*ier 15 excel vba excel-addins
我正在尝试使用VBA创建一个新的Excel实例:
__CODE__
问题是这个新的Excel实例没有加载我正常打开Excel时加载的所有插件... Excel Application对象中是否有任何内容可以加载所有用户指定的插件?
我不是试图加载特定的加载项,而是让新的Excel应用程序表现得像用户自己打开它一样,所以我真的在寻找通常加载的所有用户选择的加载项的列表打开Excel时.
Jon*_*ier 26
我再次查看了这个问题,Application.Addins集合似乎在Tools-> Addins菜单中列出了所有插件,其中一个布尔值表明是否安装了插件.所以现在对我来说似乎是循环遍历所有插件,如果.Installed = true,那么我将.Installed设置为False并返回True,这似乎正确加载我的插件.
Function ReloadXLAddins(TheXLApp As Excel.Application) As Boolean
Dim CurrAddin As Excel.AddIn
For Each CurrAddin In TheXLApp.AddIns
If CurrAddin.Installed Then
CurrAddin.Installed = False
CurrAddin.Installed = True
End If
Next CurrAddin
End Function
Run Code Online (Sandbox Code Playgroud)
使用CreateObject("Excel.Application")将有相同的结果作为使用New Excel.Application,很遗憾.
您必须使用该Application.Addins.Add(string fileName)方法按文件路径和名称单独加载所需的Addins .