05-04-2012 08:47 AM
I'm new to SAS macro.
What is the correct way to run a SAS macro?
Do I first of all run the macro definition first?(highlight from %MACRO all the way to %MEND), then I go to the main program to call it?
just call from the main program?
below is the code: (this is after an Excel file importation). Attached file is the Enterprise Guide file.
05-04-2012 09:01 AM
Your code looks fine other than that the data step is missing a RUN; statement to tell SAS that you are done typing the code.
Add a run statement after the last of the macro calls.
05-04-2012 10:36 AM
The macro defnition does need to be "compiled" before use. This is typically done by executing the definition code. However if a macro is not changing and is used frequently you may want to investigate a macro AUTOCALL LIBRARY. This is basically a folder or directory that SAS will look iin if you attempt to execute an unknown macro call to find a macro by that name an then compile as needed.