今回も%PUTについて解説します。
以下の記事では、%putにより、文字列をログに表示できるという内容でした。
/* 1+1 */
%put 1+1;

- %putにより文字列をログに表示する。
- 計算式は計算されずにそのまま表示されてしまう。
/* %eval(1+1) */
%put %eval(1+1);

- %putにより文字列をログに表示する。
- %evalにより、計算式を計算して出力できる。
/* re_num; 1+1; */
%macro re_num;
1+1;
%mend;
%put %re_num;

- %putにより文字列をログに表示する。
- マクロはデータステップの実行だけでなく、戻り値を返すこともできる。
- %putはマクロから返された戻り値を出力している。
- 1+1は計算されずにそのまま表示されてしまう。
/* re_num; %eval(1+1); */
%macro re_num;
%eval(1+1);
%mend;
%put %re_num;

- %putにより文字列をログに表示する。
- マクロはデータステップの実行だけでなく、戻り値を返すこともできる。
- %putはマクロから返された戻り値を出力している。
- %eval()により、計算式を計算して出力できる。
/* re_num %eval(%re_num) */
%macro re_num;
1+1;
%mend;
%put %eval(%re_num);

- %putにより文字列をログに表示する。
- マクロはデータステップの実行だけでなく、戻り値を返すこともできる。
- %putはマクロから返された戻り値を出力している。
- %eval()により、計算式を計算して出力できる。
- %eval()の引数内でマクロ呼び出しをしてもエラーとなる。
/* %re_num(1) */
%macro re_num(m);
%if &m.=1 %then "一致した";
%else &m.;
%mend;
%put %re_num(1);

- %putにより文字列をログに表示する。
- マクロはデータステップの実行だけでなく、戻り値を返すこともできる。
- %putはマクロから返された戻り値を出力している。
- 引数を渡したマクロ呼び出しをしている。
- %ifにより、戻り値が分岐している。
/* %re_num(2) */
%macro re_num(m);
%if &m.=1 %then "一致した";
%else &m.;
%mend;
%put %re_num(2);

- %putにより文字列をログに表示する。
- マクロはデータステップの実行だけでなく、戻り値を返すこともできる。
- %putはマクロから返された戻り値を出力している。
- 引数を渡したマクロ呼び出しをしている。
- %ifにより、戻り値が分岐している。