在宏外data里做do循环的时候很正常,用continue就可以了,如 data b; do i=1 to 5; if i=3 then continue;
put i;
end;
run;
而宏的原理与data step和proc step的运行原理又不一样,我们可以使用%goto语句来跳出%do循环: %macro a(test); %if &test.=1 %then %do; %put Go to End; %goto EndMacro; %end; %else %do; %put Do not go to End; %end; %EndMacro:; %mend a; %a(1); %a(2);
|