제공된 입력을 기반으로 런타임에 매크로를 호출하려고합니다.SAS 매크로 실행
매크로 실행 단계는 아래
% (& macrovariable)와 같은 것;
반면 macrovariable 값은 런타임에 제공됩니다.
이 방법이 가능합니까? 아니면이 문제를 해결할 방법이 있습니까?
제공된 입력을 기반으로 런타임에 매크로를 호출하려고합니다.SAS 매크로 실행
매크로 실행 단계는 아래
% (& macrovariable)와 같은 것;
반면 macrovariable 값은 런타임에 제공됩니다.
이 방법이 가능합니까? 아니면이 문제를 해결할 방법이 있습니까?
다른 방법이있을 수 있습니다,하지만 당신은 같은 널 데이터 단계 이후 CALL EXECUTE
을 사용할 수 CALL EXECUTE here에
data _null_;
CodeToRun = cats('%',"&MyMacroName");
Call Execute (CodeToRun);
run;
일부 배경 및 예.
쉬운.
%macro test(a);
%put Test says &a;
%mend;
%let mymacro = test;
%&mymacro(Hello World);
반환
8239 %macro test(a);
8240 %put Test says &a;
8241 %mend;
8242
8243 %let mymacro = test;
8244
8245 %&mymacro(Hello World);
Test says Hello World