【问题标题】:Task Scheduler script to open Excel works but does not load a specific add-in用于打开 Excel 的任务计划程序脚本有效,但不加载特定的加载项
【发布时间】:2020-02-04 17:52:03
【问题描述】:

以下是我的问题的摘要,您可以提供任何指导将不胜感激。

目标: 使用任务计划程序打开 Excel 并执行通过 Outlook 发送 Excel 工作表 PDF 的宏。

问题: Excel 文件依赖于 COM 加载项(位于与我的文件相同的路径中,但高几级)为将分发的报告提取数据。但是,当任务计划程序打开 Excel 实例时,将不会加载所需的加载项,因此报告不会更新(其他加载项加载正常)。该过程的所有其他部分都按预期工作。

我们的尝试: 禁用/启用更新链接提示(自动设置为无需询问即可更新)。我尝试打开一个随机的空白 Excel 文件以查看加载项是否会加载(它没有加载)。确保从任务管理器中关闭所有其他 Excel 实例(即幽灵 Excel)。已联系插件的开发人员,但尚未收到回复。 FWIW,当我手动执行脚本中概述的步骤时,一切正常。仅在使用脚本打开 Excel 时加载加载项失败。

我们对使用任务计划程序还很陌生,欢迎您提出想法。我已经包含了下面的脚本供您参考。如果有任何其他可能有用的信息,请告诉我们。

感谢您的宝贵时间和帮助。

    'Input Excel File's Full Path
  ExcelFilePath = "C:\mypath\myfile.xlsb"

'Input Module/Macro name within the Excel File
  MacroPath = "Module1.SendPDF"

'Create an instance of Excel
  Set ExcelApp = CreateObject("Excel.Application")

'Do you want this Excel instance to be visible?
  ExcelApp.Visible = True  'or "False"

'Prevent any App Launch Alerts (ie Update External Links)
  ExcelApp.DisplayAlerts = False

'Open Excel File
  Set wb = ExcelApp.Workbooks.Open(ExcelFilePath)

'Execute Macro Code
  ExcelApp.Run MacroPath

'Save Excel File (if applicable)
  wb.Save

'Reset Display Alerts Before Closing
  ExcelApp.DisplayAlerts = True

'Close Excel File
  wb.Close

'End instance of Excel
  ExcelApp.Quit

【问题讨论】:

  • 我认为您需要以编程方式打开加载项。
  • 感谢您的回复 BigBen。很高兴尝试这个,你能指导我到任何显示如何修改脚本来做到这一点的线程吗?
  • 再次感谢@BigBen。也许这是在线程中解释的,我错过了,抱歉,如果我这样做了,但加载项的编程加载是否包含在启动 Excel 的脚本中,或者应该是我正在运行的宏的一部分在excel文件中?
  • 我会在启动 Excel 的脚本中执行此操作。

标签: excel vba vbscript add-in windows-task-scheduler


【解决方案1】:
  • 确保您的文件位于 Excel 的默认加载项路径中

    C:\Users\<username>\AppData\Roaming\Microsoft\AddIns\
    

    您可以通过运行MsgBox Application.UserLibraryPath 获得此路径。

  • 或者,如果您使用不同的路径,请确保您的自定义路径是 Excel 信任中心中的“受信任位置”

    1. 在 Excel 中,单击“文件”选项卡,然后单击选项
    2. 在左侧列表中,单击信任中心
    3. 点击信任中心设置按钮
    4. 在左侧列表中,单击受信任的位置
    5. 如果您的文件夹不在列表中,请单击添加新位置按钮
    6. 点击浏览按钮
    7. 找到并选择您的文件夹,然后单击确定
    8. 再次单击确定,您的文件夹应出现在受信任的位置列表中。
    9. 单击确定两次,关闭窗口。

如果这一切都没有帮助,请检查除了上述内容是否有帮助:Excel COM add is not loading during startup and have to add it manually

【讨论】:

  • 再次感谢提出解决方案的所有人。最终,与此处建议的 [stackoverflow.com/questions/213375/… 相似,我添加了一个宏,该宏在启动时仅加载了每个可用的插件。不理想,但有效。非常感谢。
猜你喜欢
  • 2019-10-03
  • 1970-01-01
  • 2020-09-25
  • 1970-01-01
  • 2018-03-05
  • 2017-10-30
  • 1970-01-01
  • 2023-02-07
  • 1970-01-01
相关资源
最近更新 更多