ODSで作成された既存のHTMLファイルに追記する方法

[OS] ALL
[リリース] SAS 8.2以降
[キーワード] Base, ODS, HTML, append, NO_BOTTOM_MATTER, NO_TOP_MATTER

[質問]

ODS HTMLステートメントでHTMLファイルを出力する場合、既存ファイルと同じ出力ファイル名を指定すると、内容が上書きされます。
このとき、ファイルを上書きせず、追記する方法を教えてください。

[回答]

次のオプションとサブオプションを、FILENAMEステートメントやODS HTMLステートメントで指定することで、ODS出力を単一のHTMLファイルに追記することが可能です。

■ MODオプション
FILENAMEステートメントのオプションです。出力を既存のファイルに追記します。

■ NO_BOTTOM_MATTER、NO_TOP_MATTERサブオプション
ODS HTMLステートメントにおいてFILE=オプションまたはBODY=オプションとともに使用するサブオプションです。 NO_BOTTOM_MATTERを指定するとHTML定義終了のタグが省略され、NO_TOP_MATTERを指定するとHTML定義開始のタグが省略されます。それぞれNOBOT、NOTOPと略すことができます。

以下のサンプルプログラムでは、3つのPROCステップの結果を単一のHTMLファイル(sample.htm)に出力しています。上記オプション、サブオプションの使用法についてご確認ください。


FILENAME sample 'C:¥temp¥sample.htm' ;
ODS HTML FILE=sample (nobot) ;
PROC PRINT DATA=sashelp.class ;
RUN ;
ODS HTML CLOSE ;

FILENAME  sample  'C:¥temp¥sample.htm' MOD ;
ODS HTML FILE=sample (notop nobot) ;
PROC FREQ DATA=sashelp.class ;
  TABLES sex ;
RUN ;
ODS HTML CLOSE ;

ODS HTML FILE=sample (notop) ;
PROC UNIVARIATE DATA=sashelp.class ;
RUN ;
ODS HTML CLOSE ;