BookmarkSubscribeRSS Feed
🔒 This topic is solved and locked. Need further help from the community? Please sign in and ask a new question.
bnarang
Calcite | Level 5

Hi All

I am not sure whether it was answered before in this community. (Sorry for duplicating). The question is:

If I have a macro with some parameters like this:

%Macro have( A = , B =, C = , D 😃

Program goes here...

%Mend

Now, I want to execute this program many times in the program with different set of parameters

%Have ( A = 1 , B = 2 , C = 3, D = 4);

%Have ( A =  3, B = 3 , C =9, D = 6);

.....................................................

......................................................

This look litte ugly to me as repeating a macro progam. Are there other ways where we can produce the same results but looks nice.

Thank you

1 ACCEPTED SOLUTION

Accepted Solutions
Ksharp
Super User

You can use a dataset to hold these parameter, then call execute them.

data x;

input a b c d;

cards;

1 2 3 4

3 3 9 6

;

run;

data _null_;

set x;

call execute( '%have(' || a || ',' || ....................... );run;

View solution in original post

2 REPLIES 2
Linlin
Lapis Lazuli | Level 10

Is this better?

%Macro have( A , B , C , D )

Program goes here...

%Mend

Now, I want to execute this program many times in the program with different set of parameters

%Have ( 1 ,  2 ,  3, 4)

%Have (3,  3 , 9,  6)

...................................................

Ksharp
Super User

You can use a dataset to hold these parameter, then call execute them.

data x;

input a b c d;

cards;

1 2 3 4

3 3 9 6

;

run;

data _null_;

set x;

call execute( '%have(' || a || ',' || ....................... );run;

hackathon24-white-horiz.png

2025 SAS Hackathon: There is still time!

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!

Register Now

How to Concatenate Values

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.

SAS Training: Just a Click Away

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

Browse our catalog!

Discussion stats
  • 2 replies
  • 1155 views
  • 0 likes
  • 3 in conversation