BookmarkSubscribeRSS Feed
deleted_user
Not applicable
Hi Friends,

I am getting an error while substituting values to this macro code. Please let me the error in this code.

%macro cnt_inv(tbl=, vr=, st=, part= , ds=);
PROC SQL;
create table &tbl. as
select count(*) as &vr. from &ds.
where com in (&st.) and (&part.)
group by userid ;
quit;
%mend cnt_inv;

Thanks in Advance
Raj
5 REPLIES 5
SAS83
Fluorite | Level 6
t Message was edited by: Ravi Mantripragada
SAS83
Fluorite | Level 6
%macro cnt_inv(tbl=, vr=, st=, part= , ds=);
PROC SQL;
create table &tbl. as
select count(*) as &vr. from &ds.
where com in ( (&st.) , (&part.) )group by userid ;
quit;
%mend cnt_inv;
SAS83
Fluorite | Level 6
OR this should do it.. I think this should work..

%macro cnt_inv(tbl=, vr=, st=, part= , ds=);
PROC SQL;
create table &tbl. as
select count(*) as &vr. from &ds.
where com in (&st. , &part.)
group by userid ;
quit;
%mend cnt_inv;
SAS83
Fluorite | Level 6
There should not be any period after the name of the macro..

like &UID not &UID.

Where you need to use period after &CUT in the below example.

C:\ ...\&CUT..xls
deleted_user
Not applicable
Ravi ,Thanks for your information !!!

hackathon24-white-horiz.png

The 2025 SAS Hackathon has begun!

It's finally time to hack! Remember to visit the SAS Hacker's Hub regularly for news and updates.

Latest Updates

What is Bayesian Analysis?

Learn the difference between classical and Bayesian statistical approaches and see a few PROC examples to perform Bayesian analysis in this video.

Find more tutorials on the SAS Users YouTube channel.

SAS Training: Just a Click Away

 Ready to level-up your skills? Choose your own adventure.

Browse our catalog!

Discussion stats
  • 5 replies
  • 1410 views
  • 0 likes
  • 2 in conversation