我有一个拥有大约100个经理名字的大型数据集。现在,我需要通过经理名称导出数据,以便为每位经理提供一个数据集。我可以使用宏来创建一个单独的数据集使用的代码每位经理(实际上是一个类):如何使用宏变量按类别将SAS数据集导出到XLSX?
%macro break(byval);
data &byval;
set final(where=(Project_Manager_Name="&byval"));
run;
%mend;
data _null_;
set final;
by Project_Manager_Name;
if first.Project_Manager_Name then
call execute(%nrstr('%break('||trim(Project_Manager_Name)||')'));
run;
这是我卡住。我只需要每一个的.xlsx文件,包括经理的名字在每个文件名的末尾,如:
proc export
data = final
dbms = xlsx
outfile = "&OUTPUT.\Final_Report_ManagerName.xlsx"
replace;
run;
我以为我把&byval
宏变量某处outfile中的名字,但我仍然有错误,它不是参考。任何见解?
将您的proc导出到您的break宏中,用outfile中的所有经理名称替换它。 – Reeza 2014-10-10 17:12:41