在月份名称表中从SAS导出到Excel

在月份名称表中从SAS导出到Excel,sas,Sas,您能帮我找到一个从SAS导出到Excel的解决方案吗 这是我的出口程序: %let today=%sysfunc(today()); %let date1= %sysfunc(intnx(month,&today,-1,B)); %let expectdate1=%sysfunc(putn(%eval(&date1),monname8.)); proc export data=WORK.table DBMS=XLSX outfile="C:\FILE.xl

您能帮我找到一个从SAS导出到Excel的解决方案吗

这是我的出口程序:

%let today=%sysfunc(today());  
%let date1= %sysfunc(intnx(month,&today,-1,B));  
%let expectdate1=%sysfunc(putn(%eval(&date1),monname8.));  
proc export  
data=WORK.table  
DBMS=XLSX  
outfile="C:\FILE.xlsx"  
REPLACE;  
SHEET="&expectdate1";  
run;**
正如预期的那样,导出会将一个名为“August”的工作表创建到FILE.xlsx中。 我的问题是在刚创建的工作表(8月份)之前插入另一个工作表。如果我在8月份之前手动创建7月份工作表,那么我的导出过程不会替换8月份的数据,但会将新信息添加到7月份工作表中

提前感谢您的解决方案

问候,,
丹这个问题解决了。我用DBMS=EXCEL更改了DBMS=XLSX,得到了我所期望的结果:信息添加到了由expectdate1变量命名的工作表中,而不知道工作表的位置

我想我不理解这个问题。我运行这个;然后我让date1减去额外的一个月(得到七月);我得到了一份有两张纸的工作手册,分别是7月和8月,每张都有数据。您希望与之不同的是什么?-另外,
MONNAME8。
的长度不足以容纳所有月份(c.f.
SEP-TEM-BER
)。您使用的SAS版本是什么?DBMS=XLSX最初不支持多页工作簿。问题是什么?您是否担心新的七月工作表不是工作簿中的第一张?或者,您在SAS之外添加的旧7月份工作表是否未被删除?或者事实上,旧的8月份数据表正在被新的7月份数据表所取代?如果您不在SAS之外处理文件会发生什么?谢谢大家的回答。我使用的是6.1版本。