Help using Base SAS procedures

Macro Resolution

Accepted Solution Solved
Reply
Super Contributor
Posts: 1,040
Accepted Solution

Macro Resolution

I have code1=146

what is the meaning of "&&code&j

when j=1 in a loop

How do I resolve it???

Thanks


Accepted Solutions
Solution
‎05-06-2015 05:10 PM
Super User
Posts: 10,454

Re: Macro Resolution

With a loop SAS is looking for a series of macro variables &code1 &code2 &code3. The starting && tells SAS that something has to resolve first before looking for the actual value of the variable. So &   &code&j => &code1 .

And in your example when j=1 &&code&j should have a value of 146.

If you want to see the value:

%put &&code&j; shows the value in the log.

View solution in original post


All Replies
Super Contributor
Posts: 275

Re: Macro Resolution

&&code&j  first resolve to &code1, then &code1 resolve to 146.

Solution
‎05-06-2015 05:10 PM
Super User
Posts: 10,454

Re: Macro Resolution

With a loop SAS is looking for a series of macro variables &code1 &code2 &code3. The starting && tells SAS that something has to resolve first before looking for the actual value of the variable. So &   &code&j => &code1 .

And in your example when j=1 &&code&j should have a value of 146.

If you want to see the value:

%put &&code&j; shows the value in the log.

☑ This topic is SOLVED.

Need further help from the community? Please ask a new question.

Discussion stats
  • 2 replies
  • 217 views
  • 3 likes
  • 3 in conversation