如果数据集都在一个文件夹里
%macro Exporting;
%let OUT=d:\OUT\; /**dataset folder**/
%let ExtOut=sas7bdat; /**data file as sas7bdat**/
libname sasout "&OUT";
libname Excel excel "d:\test.xls"; /**output excel file name**/
%let RC=%sysfunc(filename(FilRF,&Out));
%let Did=%sysfunc(dopen(&FilRF));
%let MemCnt=%sysfunc(dnum(&Did));
%do i = 1 %to &MemCnt;
%let Name=%qscan(%qsysfunc(dread(&Did,&i)),-1,.);
%let EXPname=%qscan(%qsysfunc(dread(&Did,&i)),1,.);
%if %qupcase(%qsysfunc(dread(&Did,&i))) ne %qupcase(&Name) %then %do;
%if (%qupcase(&Name) = %qupcase(&ExtOut)) %then %do;
data Excel.&EXPname;
set sasout.&EXPname;
run;
%end;
%end;
%end;
%let RC=%sysfunc(dclose(&Did));
libname Excel;
%mend Exporting;
%Exporting;
|