如何每天自动化SAS EG 4.1程序并将输出放在Excel中并运行VBA并打印PDF?

时间:2013-10-30 20:55:31

标签: excel vba batch-file automation sas

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

当我想到所有这些时,我惊呆了。我实际上在记事本中创建了一个批处理文件,并使用SAS在Windows XP控制面板中使用Task Scheduler在特定时间打开文件。但是,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文件夹中。

我很抱歉这是太多的信息,但如果有人能帮助我弄明白,我真的很感谢你的帮助!

公园

1 个答案:

答案 0 :(得分:2)

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

Chris Hemedinger对如何做到这一点有几个很好的解释;例如,请参阅this article,或浏览他的blog articles