- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
I am facing some issues in SAS Macro Variables.
I have a program in which my library name is a macro variable and the data set name may or may not be a macro variable.
something like this . >
&LIBRARY.SORTED,
or
&LIBRARY.&DATA
now whenever I use it as &LIBRARY.SORTED, It resolves to SASHELPSORTED and considers it to be in work library.
what should I do to resolve it as SASHELP.SORTED
Accepted Solutions
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
You should learn the full syntax for using a macro variable and Always use it in your code. The form is:
&<macro variable name>.
Note the & before and the dot afterwards, this is the leading and terminating character, so when you use the dot it terminates the variable, and does not show in the generated text. What your code should look like (and also note that coding all in upper case makes it harder to read):
&library..sorted
You will see the two dots, one to close the macro variable, the second is used to delimit library and dataset.
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
Macro variable names muste be valid SAS names (letters, digits, underlines, must not start with a digit, max length 32). The dot cannot be used in a macro variable name; it is always used to mark the end of a macro variable name when it is referenced.
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
You should learn the full syntax for using a macro variable and Always use it in your code. The form is:
&<macro variable name>.
Note the & before and the dot afterwards, this is the leading and terminating character, so when you use the dot it terminates the variable, and does not show in the generated text. What your code should look like (and also note that coding all in upper case makes it harder to read):
&library..sorted
You will see the two dots, one to close the macro variable, the second is used to delimit library and dataset.
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
ThankYou Very Much EveryOne. It worked. 🙂
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
&LIBRARY..&DATA
You need two periods.