【问题标题】:Refreshing the Excel Addin List刷新 Excel 插件列表
【发布时间】:2018-08-20 18:38:51
【问题描述】:

我正在尝试使用 VBA 检查是否安装了 Excel 插件。但是,插件列表 (Application.AddIns) 保持为空,除非我进入 Excel 界面并列出插件,然后 Application.Addins 将填充所有插件。

我尝试使用“Application.VBE.AddIns.Update”和“Excel.Application.COMAddIns.Update” 但我得到相同的结果。

使用 Windows 10、Excel 2007

【问题讨论】:

    标签: vba excel excel-2007 excel-addins


    【解决方案1】:

    插件是一个集合。尝试像这样查看它们:

    Sub TestMe()
    
        Dim cnt         As Long
        For cnt = 1 To AddIns.Count
            Debug.Print AddIns(cnt).Name
            Debug.Print AddIns(cnt).Installed
        Next cnt
    
    End Sub
    

    然后你会看到你得到了什么。这是标准:

    ANALYS32.XLL
    True
    ATPVBAEN.XLAM
    False
    SOLVER.XLAM
    True
    

    【讨论】:

    • 当我尝试这样做时,它甚至不会进入循环,因为 Addins 集合是空的。但是,肯定安装了插件。我还注意到,如果我使用调试器暂停执行,也会导致 Addins 集合被填充。
    • @user3397513 - 您可以尝试录制宏,完全按照您在 Excel 中手动执行的操作“我进入 Excel 界面并列出插件”,当插件出现?
    • 当我录制宏时,VBA 中没有显示任何内容 - 我猜是因为列出插件是在 Excel 应用程序中进行的,而不是在工作表中。我采取的步骤是Office Button -> Excel Options -> Addins
    【解决方案2】:

    Office 区分加载项和 COM 加载项。它们存在于不同的集合中。要枚举您的 COM 加载项,请执行以下操作:

    Dim ai As COMAddIn
    For Each ai in Application.COMAddIns
        Debug.Print ai.Description
    Next ai
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-06-10
      • 1970-01-01
      • 2017-03-31
      • 1970-01-01
      • 2023-03-12
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多