Добавить бесплатный текст в таблицу Excel - PullRequest
0 голосов
/ 05 марта 2020

У меня есть следующая программа SAS, которая создает книгу Excel и помещает вывод proc tabulate в несколько листов / регистров (BY var1):

ODS EXCEL FILE="/projects/myFile.xlsx" options(
    frozen_headers="4"
    sheet_name="#byval1"
    embedded_titles="yes"
    embedded_footnotes="yes");

    PROC TABULATE DATA=table;
        BY var1;
        TITLE 'My Title';
        FOOTNOTE '© 2020 by Company';
        CLASS ...;
        TABLES ...;
    RUN;
ODS EXCEL CLOSE;

Итак, мои вопросы:

* 1. Как я могу добавить дополнительный лист в начале, где я могу написать некоторую свободную текстовую информацию (например, метаданные)

* 2. Как я могу, прямо под таблицей, созданной pro c tabulate, добавить дополнительный свободный текст (например, некоторые предложения, поясняющие таблицу)?

* 3. Есть ли способ указать внешний вид таких текстовых элементов? (например, цвет текста или размер текста)

1 Ответ

3 голосов
/ 05 марта 2020

Вы можете использовать ODS TEXT для написания текста, но это, похоже, не заставляет новый лист. Или вы можете использовать шаг данных с оператором FILE PRINT и PUT для записи текста. Или просто сделайте простой набор данных с текстом и напишите это. Используйте дополнительную инструкцию ODS EXCEL options (...) для установки имени листа.

%let path=/projects/;
ODS EXCEL FILE="&path.myFile.xlsx" options(sheet_name='Information');
data _null_ ;
  file print;
  put 'Hello world';
run;
ODS EXCEL options
    (frozen_headers="4"
     sheet_name="#byval1"
     embedded_titles="yes"
     embedded_footnotes="yes"
    )
;
proc print data=class; 
  by sex; 
run;
ods EXCEL close;

Вы можете использовать дополнительные операторы FOOTNOTE, чтобы добавить другой текст под вашими "страницами" в PRO C TABULATE. Если вам нужно больше контроля, вам может потребоваться переключиться на PRO C REPORT вместо PRO C TABULATE.

Посмотрите на настройки стиля ODS, чтобы узнать, как управлять внешним видом любой части этого.

...