I have many macro variables, &x1, &x2, &x3 ... containing text strings. I loop through all of them, using &&x&i to refer to each variable.
In one or more of the text strings, there might a percent sign or ampersand, for example the text string assigned to &x3 is: Image_Test BfCent_AB (%rms) 114
I want to use the %superq so that SAS will not resolve the apparent macro referece %rms in the text strign.
I'd like to use something like %superq(&&x&i) in my loop, but of course that won't work within %superq. Is there a modification or workaround that would allow this to work?
I have tried %nrbquote(&&x&i) and that appears to work, but I get a worrisome WARNING in the SASLog that says:
Apparent invocation of macro RMS not resolved.
Try this %superQ(X&i)
With SUPERQ you "point" the location of the data you want quote. With NRBQUOTE you quote the resolved value of a macro variable reference. Or something like that.
Try this %superQ(X&i)
With SUPERQ you "point" the location of the data you want quote. With NRBQUOTE you quote the resolved value of a macro variable reference. Or something like that.
Yes, that works. It's one of those "why didn't I think of that" moments. Thanks again, data _null_
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!
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.
Ready to level-up your skills? Choose your own adventure.