【问题标题】:SAS Stored process in excel is not refreshing when using a task scheduler?使用任务计划程序时,excel中的SAS存储过程不刷新?
【发布时间】:2018-12-01 09:09:35
【问题描述】:

我正在尝试使用 windows 任务计划程序自动打开一个 excel 工作簿,并且在打开时,它应该刷新一个 SAS 存储过程。

excel中刷新存储过程的VBA是:

Sub RefreshSAS()

Dim sas 作为对象

设置 sas = Application.COMAddIns.Item("SAS.ExcelAddIn").Object

sas.Refresh ThisWorkbook

结束子

然后我将这段代码放在 VBA 中的 ThisWorkbook 中:

Sub Workbook_Open()

刷新SAS

结束子

我相信我已经加载了所有必要的插件。当我手动打开文件时,它运行得非常好,您可以在顶部菜单栏的 excel 中看到“SAS”选项卡(在主页、插入、页面布局、开发人员等旁边)。但是当我使用 Windows 任务计划程序打开它时,它无法运行并出现此 VBA 错误: enter image description here

出现此错误时,菜单栏上没有“SAS”选项卡。如果我在 VBA 错误上单击结束或调试,几秒钟后,将出现“SAS”选项卡。 因此,在我看来,当任务计划程序打开 excel 工作簿并尝试刷新时未加载 SAS 插件,并且在我单击结束或调试后开始加载。 再次,当我手动打开文件时,它可以正常工作。此问题仅在我使用任务计划程序时发生。任何人有任何想法或建议?我非常感谢任何帮助。谢谢!!!

【问题讨论】:

  • 以编程方式启动 Excel 时不会加载加载项 - 您的 VBA 将首先需要加载加载项,然后才能调用它。

标签: excel vba sas scheduler add-in


【解决方案1】:

或者 - 通过使用 Excel 将 STP 调用为 Web 查询来完全避免插件/插件。额外的优势是它可以在任何版本的 Excel 上运行。这在任务计划程序上下文中应该可以正常工作。您需要为流式输出设置 STP。

您的 VBA 将如下所示:

您可以在我的博文here中找到更多信息

【讨论】:

    猜你喜欢
    • 2012-12-28
    • 2022-12-01
    • 1970-01-01
    • 1970-01-01
    • 2015-01-04
    • 1970-01-01
    • 2020-01-28
    • 2018-07-02
    • 1970-01-01
    相关资源
    最近更新 更多