Hi. I have a macro where I want to do 2 things if n>0 (else do nothing). I want to append a data set to an existing table, and I want to call for another macro. I get this error message referring to the call of the macro: "Statement is not valid or it is used out of proper order." Can anyone help me?
%macro x;
%if &n.>0 %then %do;
proc append base=a data=b;run;
call execute("%addInfo");
%end;
%mend;
%x;
The call execute is unnecessary here. This ought to work (assuming macro %addinfo is defined).
%macro x;
%if &n.>0 %then %do;
proc append base=a data=b;run;
%addInfo
%end;
%mend;
%x
The call execute is unnecessary here. This ought to work (assuming macro %addinfo is defined).
%macro x;
%if &n.>0 %then %do;
proc append base=a data=b;run;
%addInfo
%end;
%mend;
%x
Good news: We've extended SAS Hackathon registration until Sept. 12, so you still have time to be part of our biggest event yet – our five-year anniversary!
Check out this tutorial series to learn how to build your own steps in SAS Studio.
Find more tutorials on the SAS Users YouTube channel.
Ready to level-up your skills? Choose your own adventure.