SAS: ODS EXCEL (как называть разные листы) - PullRequest
1 голос
/ 23 октября 2019

Я хочу экспортировать таблицу, сгенерированную PROC TABULATE. Мой код выглядит следующим образом:

ODS EXCEL FILE="myFile.xlsx" (options sheet_name="CRIME TYPE");

  PROC TABULATE DATA=myData;
    TITLE 'myTitle';
    BY crime_type;
    CLASS year;
    CLASS nation / ORDER=FREQ;
    TABLES year, nationality / CONDENSE;
  RUN;

ODS EXCEL CLOSE;

Это создает мне файл Excel с различными листами:

THEFT     
      country1  country2 country3 ...
--------------------------------------
1990           
1991
1992
--------------------------------------



ASSAULT  
      country1  country2 country3 ...
--------------------------------------
1990           
1991
1992
--------------------------------------

К сожалению, на листах нет названий различных преступлений (кража,нападение,…) но называются «ПРЕСТУПЛЕНИЕ ТИП 1», «ПРЕСТУПЛЕНИЕ ТИП 2» и т. д. (SHEET_NAME="CRIME TYPE").

Кто-нибудь знает, как назвать листы в соответствии со значениями переменной crime_type?

Ответы [ 2 ]

3 голосов
/ 23 октября 2019

Если вы хотите назвать листы, используя значения переменной crime_type, вы можете использовать options(sheet_name='#byval1') вместо (options sheet_name="CRIME TYPE")

0 голосов
/ 23 октября 2019

попробуйте это решение от поддержки SAS https://communities.sas.com/t5/ODS-and-Base-Reporting/ODS-Excelxp-PROC-TABULATE-multiple-sheets/td-p/359181

...