SAS输出到EXCEL的多个sheet,经多次试验,终于解决啦(以后会有更多干货分享)
如果一个sheet里输出多个结果,SAS默认会自动分很多Sheet,而并不是放在指定的Sheet中,
需用SHEET_INTERVAL='NONE' 这个才会成功。
一下是成功示例:
ODS TAGSETS.EXCELXP FILE="D:\REPORT\TEST.XLS" STYLE=NORMAL;
ODS TAGSETS.EXCELXP OPTIONS(SHEET_NAME="SHEET1" SHEET_INTERVAL='NONE' );
PROC PRINT DATA=SASHELP.CLASS;
RUN;
PROC TABULATE DATA=SASHELP.CLASS ORDER=DATA MISSING;
CLASS SEX ;
VAR HEIGHT;
TABLE SEX=''*HEIGHT=''*(MEAN='平均身高'*F=8.2)
/MISSTEXT='--' STYLE=[BORDERWIDTH=1] ;
RUN;
ODS TAGSETS.EXCELXP OPTIONS(SHEET_NAME="SHEET2" SHEET_INTERVAL='NONE' );
PROC TABULATE DATA=SASHELP.CLASS ORDER=DATA MISSING;
CLASS SEX ;
VAR HEIGHT;
TABLE SEX=''*HEIGHT=''*(MEAN='平均身高'*F=8.2)
/MISSTEXT='--' STYLE=[BORDERWIDTH=1] ;
RUN;
PROC TABULATE DATA=SASHELP.CLASS ORDER=DATA MISSING;
CLASS SEX ;
VAR WEIGHT;
TABLE SEX=''*WEIGHT=''*(MEAN='平均体重'*F=8.2)
/MISSTEXT='--' STYLE=[BORDERWIDTH=1] ;
RUN;
ODS TAGSETS.EXCELXP CLOSE;