Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何每天自动化SAS EG 4.1程序,并将输出放入Excel,运行VBA和打印PDF?_Excel_Vba_Batch File_Automation_Sas - Fatal编程技术网

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

如何每天自动化SAS EG 4.1程序,并将输出放入Excel,运行VBA和打印PDF?,excel,vba,batch-file,automation,sas,Excel,Vba,Batch File,Automation,Sas,我对自动化完全陌生,但我努力在网上到处寻找答案,持续了一周。我不能做我想做的事。我有一个SAS enterprise guide 4.1旧版本,程序在SAS服务器上运行。我每天早上9:30有一份SAS报告。我有代码,已经设置和工作良好。我需要每天早上8点自动运行此程序,然后将输出移动到工作表1中特定单元格范围的特定excel文件,然后调用工作表2中的VBA宏按钮(更新),然后将同一文件中的两个工作表作为单个PDF文件打印到我计算机中的某个位置。我将不得不上传到CMS这个。我想自动化直到最后一步的

我对自动化完全陌生,但我努力在网上到处寻找答案,持续了一周。我不能做我想做的事。我有一个SAS enterprise guide 4.1旧版本,程序在SAS服务器上运行。我每天早上9:30有一份SAS报告。我有代码,已经设置和工作良好。我需要每天早上8点自动运行此程序,然后将输出移动到工作表1中特定单元格范围的特定excel文件,然后调用工作表2中的VBA宏按钮(更新),然后将同一文件中的两个工作表作为单个PDF文件打印到我计算机中的某个位置。我将不得不上传到CMS这个。我想自动化直到最后一步的前一步,每天创建最终的PDF报告

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

以下是批处理文件代码: 启动/w C:\PROGRA~1\SAS\enterp1\SEGuide.exe–sysin“Z:\ccccc\vvvv\Report.egp”

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

很抱歉,这是太多的信息,但如果有人能帮我弄清楚,我会非常感谢你的帮助


停车场

企业指南自动化是一个比StackOverflow答案详细说明的问题更大的问题。一般来说,EG通过DLL(SASEGScripting.DLL)实现自动化,然后可以使用VBScript、Powershell或.NET(C#等)实现自动化。您需要阅读API的文档或教程


Chris Hemedinger对如何进行这项工作有一些很好的解释;例如,请查看或浏览他的。

谢谢Joe!我正在学习编程,我想知道我是否至少可以在windows批处理文件中编写代码,使SAS代码运行并输出到一个文件中。我确信这可以通过在我上面的批处理文件中添加一个简单的2-3行代码来完成。因为我可以在特定时间打开SAS程序和EGP文件,但无法运行该程序。我应该改用.sas文件吗?如果是这样,如何为sas服务器身份验证、用户名和密码编码?再次感谢!嗯,你可以读我链接的那篇文章。这回答了所有这些问题。