%let a=cat; %macro animal(a=frog); %let a=bird; %mend; %animal(a=pig) %put a is &a;
Here keyword marco parameter 'a=' create a LOCAL macro variable &a in macro "%animal".
So the GLOBAL macro variable &a. would not be updated.
But in your macro,you don't have it, therefore you only have a GLOBAL macro variable and this GLOBAL macro variable would be updated.
Here is some additional documentation:
https://blogs.sas.com/content/sgf/2015/02/13/sas-macro-variables-how-to-determine-scope/
April 27 – 30 | Gaylord Texan | Grapevine, Texas
Walk in ready to learn. Walk out ready to deliver. This is the data and AI conference you can't afford to miss.
Register now and lock in 2025 pricing—just $495!
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.