SAS 9.1.3 を使用して DATA ステップでマクロを呼び出していますが、マクロは PROC REPORT ステップを生成するため、CALL EXECUTE を使用してそれを呼び出し、それらすべての PROC REPORT ステップを生成し、その後すべてを実行しています。データステップ。
私は配列を使用しており、この配列内のすべての要素に対して毎回マクロが実行されます。
DATA macro_test;
ARRAY questions[3] $ 32 ('question1' 'question2' 'question3');
DO i=1 to 3;
a_question = questions(i);
CALL EXECUTE( "%report_by_question(a_question)" );
end;
RUN;
問題は、レポートの出力が (通常) 逆方向に出力されることです。最初に question3 が出力され、次に 2、次に 1 が出力されます。
CALL EXECUTE の実行順序を変更して、質問レポートを順番に印刷できるようにする方法はありますか、それとも独自のことを行うだけですか?
ありがとう!