2016-05-23 85 views
0

SAS EG项目中有两个汇总表和一个条形图。我可以使用多个工作表创建输出xls文件,其中将有汇总表和条形图。我知道ods tagset.excelXP在这里不适合。也许我应该使用另一个ODS?SAS EG通过ODS创建多个工作表

我尝试使用此代码,但不是条形图我有空白页:

ods excel file="/sas/user_data/flags/multiple5.xls" 
style=pearl 
options( 
    sheet_interval="none" 
    sheet_name="Sheet1" 
); 
PROC TABULATE 
DATA=SASHELP.APPLIANC 
    ; 
     VAR units_2; 
    CLASS units_7/ORDER=UNFORMATTED MISSING; 
    TABLE 
     units_7 *(units_2 * Sum={LABEL="Sum"}) 
     all = 'Total' *(units_2 * Sum={LABEL="Sum"})  ; 
    ; 
RUN; 
ods excel options(sheet_interval='none' sheet_name='Sheet2'); 
PROC TABULATE 
DATA=SASHELP.AARFM 
    ; 
    VAR lineno; 
    CLASS key/ORDER=UNFORMATTED MISSING; 
    TABLE 
     /* COLUMN Statement */ 
     key *(lineno * Sum={LABEL="Sum"}) 
     all = 'Total' *(lineno * Sum={LABEL="Sum"})  ; 
    ; 
RUN; 
ods excel options(sheet_interval='none' sheet_name='Sheet3'); 
ods graphics/height=400 width=800 noborder; 
PROC GCHART DATA=SASHELP.ADSMSG 
; 
    VBAR 
    MSGID 
/
    CLIPREF 
FRAME TYPE=FREQ 
    COUTLINE=BLACK 
    RAXIS=AXIS1 
    MAXIS=AXIS2 
; 
RUN; 
ods excel close; 
+0

你是如何产生这些表/图表?他们指向点击生成或者是否存在您编写(或生成)生成它们的程序(SAS代码)?此外,您正在运行的是什么版本的SAS(不是EG) - 9.4或更早的版本(如果知道,具体更新 - TS1M0,TS1M1等)? – Joe

+0

@Joe,我尝试写sas程序,并使用PROC TABULATE和PROC GHART语句。 SAS版本是9.4。 – Jdzel

+0

@Joe,如果我可以使用点+单击创建多个工作表文件,但是我认为这是不可能的,那将会很棒。 – Jdzel

回答

0

https://communities.sas.com/t5/ODS-and-Base-Reporting/ODS-excel-amp-multiple-sheets/m-p/261953/highlight/true#M15551

ods excel file="C:\elever.xlsx"; 
ods excel options(sheet_name="SkoleElever" sheet_interval="none"); 
proc print data=sashelp.class; 
run; 
proc print data=sashelp.class; 
run; 
/* Add dummy table */ 
ods excel  options(sheet_interval="table"); 
ods exclude all; 
data _null_; 
file print; 
put _all_; 
run; 
ods select all; 
ods excel options(sheet_interval="none"); 
proc tabulate data=sashelp.class; 
class age sex; 
table age, sex; 
    run; 
    proc print data=sashelp.class; 
    where age=12; 
    run; 
    ods EXCEL close;