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

Hi,

I am trying to use a macro in the table name but its not recognizing. Am I doing anything wrong?

Data test;

Set acc_&max_acc;

run;

Max_acc is macro with value 12.

Sachin

1 ACCEPTED SOLUTION

Accepted Solutions
kuridisanjeev
Quartz | Level 8

Yes,My Guess is Correct.

Macro variable containing Leading balnks

here is the solution to avoid these type of error,

Data a;

set acc%sysfunc(trim(&max_acc));

run;



Regards,


Sanjeev.K

View solution in original post

5 REPLIES 5
kuridisanjeev
Quartz | Level 8

Hi Sachin,

May i know what error you are getting .

I guess That variable containing leading blanks.

Regards,

Sanjeev.K

sachin01663
Obsidian | Level 7

I think you are right Sanjeev. I am getting this error:

NOTE: Line generated by the macro variable "MAX_ACC".

392   acc_      12

                --

                22

ERROR: File WORK.ACC_.DATA does not exist.

There are some leading blanks before 12 so its not recognizing table name - its reading table name till Acc_.

However, I used SQL INTO: to create this macro and its numeric - so how come there are leading blanks

Thanks

Sachin

kuridisanjeev
Quartz | Level 8

Yes,My Guess is Correct.

Macro variable containing Leading balnks

here is the solution to avoid these type of error,

Data a;

set acc%sysfunc(trim(&max_acc));

run;



Regards,


Sanjeev.K

kuridisanjeev
Quartz | Level 8

Hi Sachin,

Basically Macro concept is Text Substitution.So what ever the value you going to store in a macro variable ,it always stores as a text only.

Regards,

Sanjeev.K

sachin01663
Obsidian | Level 7

Thank you Sanjeev. Very Helpful.

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
  • 5 replies
  • 5386 views
  • 3 likes
  • 2 in conversation