SAS宏变量和文件扩展名

时间:2012-04-02 09:42:36

标签: sas

我的代码末尾有以下代码将SAS数据导出到Excel文件。 RepDate在代码开头设置如下:

%let RepDate = &SYSDATE9; 

日期完美无缺,但是当我使用以下代码导出数据时:

PROC EXPORT DATA=MYData         
OUTFILE="C:\Documents and settings\Documents\myFile &RepDate.XLS"     DBMS=EXCEL2000 REPLACE;
RUN;

将日期输入文件名okay,但XLS会添加到文件名中。缺少文件扩展名的点,文件名变为:

myFile02APR2012XLS

这不是我的预期,我期望文件名如下:     myFile02Apr2012 使用.XLS作为文件扩展名。有办法解决这个问题吗?

1 个答案:

答案 0 :(得分:13)

你需要

OUTFILE="C:\Documents and settings\Documents\myFile &RepDate..XLS"

你需要额外使用。在&RepDate宏变量引用之后。首先 。终止宏变量引用,第二个。然后是字符串的一部分。

要明白为什么。是必要的,你可能想建立一个文件名

02Apr2012MyFile.XLS

在这种情况下,您可以尝试写:

&RepDateMyFile.XLS

但是sas解释器不知道宏变量名称的结束位置和字符串文本是否继续,因此需要一个点才能结束宏变量引用:

&RepDate.MyFile.XLS

在你的情况下,你想要放一个。紧接着解析后的宏变量,因此需要两个点。