如何按区域拆分 excel 数据并将分数从 SAS 邮寄到适当的地址?

How to split excel data by region and mail fractions to appropriate addresses from SAS?

我已经在 sas 中准备了一个数据集,并以 .xlsx 格式导出到我计算机上的某个位置。我可以发送带有我导出的附件的邮件。我想知道是否有可能通过 sas 编程将 'where' 条件应用于 excel 中的列(在本例中为区域,具有 4 个值 -W、E、S、N)并附加过滤后的(特定记录,如仅 W、S 的数据等)excel 文件发送到适当的电子邮件地址?请 help.I 附上在 SAS Enterprise Guide 7.1 上为单个收件人编写的代码,它发送未过滤的 excel 和示例数据的图像。

options emailsys = smtp
    emailid = 'xxxx@gmail.com'
    emailpw = 'xxxx'
    emailhost = 'smtp.gmail.com'
    emailport = 587 ;

options emailhost=(
    'smtp.gmail.com'
    STARTTLS auth=LOGIN
    id='xxxx@gmail.com'
    pw='xxxx' port=587
);
filename f_email email
    to = 'xxxx@jkl.com'
    from = 'xxxx@gmail.com'
    subject = 'Test'
    attach=("D:\abc\xxxx.xlsx"  content_type="application/xlsx");

data _null_;
    file f_email;
    put 'Test';
run;

此致, 斯克拉尔

您无法在发送前过滤 excel 文件,您必须为每个区域创建一个 excel 文件并单独附加。

步骤:

  1. 读取SAS中的excel文件并保存到作品table
  2. Filter/breakdown table 分为四个 table:北、南、东、西
  3. 将您的四个 table 导出到四个 excel 文件
  4. 重复上述代码四次或为您的电子邮件代码创建一个宏函数。

您将需要“PUT 语句电子邮件指令”。

http://documentation.sas.com/?docsetId=lestmtsglobal&docsetTarget=n0ig2krarrz6vtn1aw9zzvtez4qo.htm&docsetVersion=9.4&locale=en#n1rxu4polvqoy3n13t1ado2vfcyd