La macro-programmation Sas permet, tout comme les
fonctions personnalisées
de R, d'automatiser certaines tâches.
Voici par exemple comment définir et utiliser une macro nommée rapport,
paramétrée par un tableau de données, une variable et un titre.
/* définition de la macro */
%macro rapport(tab,variable,titre);
proc means data=&tab;
var &variable;
title "&titre";
run;
proc gchart data=&tab;
vbar &variable;
title "&titre";
run;
%mend macro;
/* jeu de donnees pour le test */
data notes;
input nom$ math anglais russe sexe$;
cards;
Alfred 10 5 15 homme
Berthe 10 7 5 femme
Carole 5 7 5 femme
run;
/* utilisation de la macro */
%rapport(notes,math,mathematiques);
Lorsqu'on exécute l'instruction %rapport(notes,math,mathematiques),
&tab est remplacé par notes,
&variable est remplacé par math
et &titre est remplacé par mathematiques.