【问题标题】:How to automate SAS EG 4.1 program daily and put the output in Excel and run VBA and print PDF?如何每天自动化 SAS EG 4.1 程序并将输出放入 Excel 并运行 VBA 并打印 PDF?
【发布时间】:2013-10-30 20:55:30
【问题描述】:

我对自动化完全陌生,但花了 1 周的时间努力在网上到处寻找答案。我无法做我想做的事。我有一个 SAS 企业指南 4.1 旧版本,程序在 SAS 服务器上运行。我每天早上 9:30 都有一份 SAS 报告到期。我的代码已经设置好并且工作正常。我需要自动化这个程序以每天早上 8:00 运行,然后将输出移动到工作表 1 中特定单元格范围的特定 excel 文件,然后调用放置在工作表 2 中的 VBA 宏按钮(更新),然后打印将同一文件中的两个工作表作为单个 PDF 文件输出到我计算机的某个位置。我将不得不将其上传到 CMS 中。我想自动化直到最后一步之前的步骤,每天创建最终的 PDF 报告。

当我想到所有这些时,我惊呆了。我实际上在记事本中创建了一个批处理文件,并让 SAS 在特定时间使用 Windows XP 控制面板中的任务计划程序打开该文件。但是,SAS 没有运行该程序。

这里是批处理文件代码: 开始/w C:\PROGRA~1\SAS\ENTERP~1\SEGuide.exe –sysin "Z:\ccccc\vvvvv\Report.egp"

如果有人可以帮助我,我想知道如何让 SAS 在 SAS 服务器中运行程序,以及在哪里提供 SAS 服务器身份验证的用户名和密码。谁能给我一个如何在我的批处理文件中编写此代码的示例。此外,如何将输出导出到 SHEET 1 中的特定 excel 文件中,然后运行 ​​VBA 宏。那么如何将两个工作表的PDF文件打印为一个文件,并将最终的PDF文件放在C:\Report文件夹中。

很抱歉信息太多,但如果有人能帮我弄清楚,我将非常感谢您的所有帮助!

公园

【问题讨论】:

    标签: excel vba batch-file automation sas


    【解决方案1】:

    企业指南自动化是一个比 StackOverflow 答案更详细的问题。通常,EG 通过 DLL (SASEGScripting.dll) 将自身暴露给自动化,然后您可以使用 VBScript、Powershell 或 .NET(C# 等)对其进行自动化。您需要阅读 API 的文档或阅读教程。

    Chris Hemedinger 对如何执行此操作有几个很好的解释;比如看this article,或者浏览他的blog articles

    【讨论】:

    • 谢谢乔!我只是在学习编程,我想知道我是否至少可以在 Windows 批处理文件中编写代码以使 SAS 代码运行并输出到文件中。我确信这可以通过添加到我上面的批处理文件中的简单 2-3 行代码来完成。因为我可以在特定时间打开 SAS 程序以及 EGP 文件,但无法运行该程序。我应该改用 .sas 文件吗?如果是这样,我如何为 sas 服务器身份验证、用户名和密码编码?再次感谢!
    • 嗯,你可以阅读我链接到的文章。这回答了所有这些问题。
    猜你喜欢
    • 2022-12-09
    • 1970-01-01
    • 2018-01-16
    • 2019-04-23
    • 2017-09-21
    • 1970-01-01
    • 2014-12-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多