%macro ab(x);
proc print data=test1 ;where rating in(&x);run;
%mend;
%ab(2,3,4)
here i'm getting error that more positional parameters found but if i write
proc print data=test1 ;where rating in(2,3,4);run;
i'm getting the desired output.
&x also doing the same then y error is cmng?
I think after resolving macro variable to (2,3,4) it should work like a normal sas program.
.
Please explain how the macro processor is processing these values.
if i write
proc print data=test;
where rating in (2,3,4);run;
i get the desired output.
But instead of 2,3,4 if i write a macro variable which has the sam values(2,3,4) then it is not showing the desired result??
macro resolving to 2,3,4 only.so it should print the observations.
Are you ready for the spotlight? We're accepting content ideas for SAS Innovate 2025 to be held May 6-9 in Orlando, FL. The call is open until September 25. Read more here about why you should contribute and what is in it for you!
Learn how use the CAT functions in SAS to join values from multiple variables into a single value.
Find more tutorials on the SAS Users YouTube channel.