Controlling Variable Scope

Scope of Macro Variables

Every macro variable has a scope.
Macro variable scope can either be global or local. Global macro variables can be created at any time during a SAS session, can persist for the duration of the SAS session, and can be referenced anywhere in the SAS session except for the DATALINES statement. To remove a global macro variable from memory within a SAS session, you must explicitly delete it using a %SYMDEL statement.
Local macro variables are created only during execution of a macro program, persist only as long as the macro is executing, and therefore can be referenced only while the macro is executing. When a macro terminates execution, its local symbol table is automatically deleted.

Get SAS Certified Professional Prep Guide now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.