SAS マクロのサンプル

SASのマクロのサンプルです。

目次

サンプル マクロ
  マクロに引数がある場合

マクロ

%macro マクロ名 [(引数,...)];
  処理
%mend マクロ名;

以下は、マクロで文字列を出力するサンプルです。

%macro test1;
   テストです
%mend test1;

DATA _NULL_;

put "これは%test1"; /*  これはテストです */
run;

1行目から3行目までがtest1というマクロです。
5行目の「_null_」は、データステップのみ実行する場合に使用します。
7行目は、文字列とマクロ名がダブルコーテーションで括られています。
マクロ名の前に%を指定します。2行目の文字列が出力されます。

 

マクロに引数がある場合

マクロに引数がある場合のサンプルです。

%macro test1(num1,num2);
	%put %eval(&num1 + &num2);/* 1200が出力される */
%mend test1;

DATA _NULL_;

%test1(1000,200); 
run;

1行目から3行目までがtest1というマクロです。
2行目は、2つの引数を受け取って足し算を行い値を出力します。変数の前にアンパサンド(&)を指定します。
7行目は、1行目のマクロを引数付きで実行します。

関連の記事

SAS マクロ変数のサンプル

△上に戻る