There is a new version of this course. Please see SAS® Macro Language 1: Essentials.
This course focuses on the components of the SAS macro facility and how to design, write, and debug macro systems. Emphasis is placed on understanding how programs with macro code are processed.
This course can help prepare you for the following certification exam(s): SAS Certified Clinical Trials Programming Using SAS 9, SAS Certified Professional: Advanced Programming Using SAS 9.4.
Learn how to
- perform text substitution in SAS code
- automate and customize the production of SAS code
- conditionally or iteratively construct SAS code
- use macro variables and macro functions.
Who should attend
Experienced SAS programmers who have a sound understanding of DATA step processing and who want to write SAS programs that are reusable and dynamic
Before attending this course, you should have completed the SAS® Programming 2: Data Manipulation Techniques course or have equivalent knowledge. Specifically, you should be able to
- use a DATA step to read from or write to a SAS data set or external file
- use DATA step programming statements such as IF-THEN/ELSE, DO WHILE, DO UNTIL, and iterative DO
- use SAS data set options such as DROP=, KEEP=, and OBS=
- use character functions such as SUBSTR, SCAN, INDEX, and UPCASE
- form subsets of data using the WHERE clause
- create and use SAS date values and constants
- use SAS procedures such as SORT, PRINT, CONTENTS, MEANS, and FREQ.
This course addresses Base SAS software.
Introducing Macro Variables
Using Macro Functions
- basic concepts
- using automatic macro variables
- creating user-defined macro variables
- displaying macro variables in the SAS log
- processing macro variables
- combining macro variable references with text
Creating Macro Variables at Execution Time
- overview of macro functions
- using macro character functions
- using arithmetic and logical expressions
- using SAS functions with macro variables
- using macro functions to mask special characters
Creating and Using Macro Programs
- creating a macro variable during DATA step execution
- passing data between steps
- creating indirect references to macro variables
- creating macro variables using PROC SQL
Using Conditional and Iterative Processing in Macro Programs
- basic concepts
- using macro parameters
More on Macro Programming
- processing statements conditionally
- using conditional processing to validate parameters
- processing statements iteratively
- understanding symbol tables
- writing utility macros
- minimizing errors in your macros