1、宏名称前加% 宏变量前加&
例如:%let abc=this is an instance;
在使用中需要用&abc的格式。同时字符型宏变量在赋值时不需要加上引号。
sas会在单引号引用的文本中替换宏变量,如果需要,则需要对文本加上双引号。
1 %let city=dg; 2 proc print data=mysas.mmstwo; 3 where city="&city"; 4 run;
在使用中注意在文本赋值上使用双引号。
2、定义宏片段
1 %macro sample; 2 proc print data=mysas.mmstwo; 3 where city="&city"; 4 title "&city mms user"; 5 run; 6 %mend; 7 %let city=fs; 8 %sample;
用%macro +%mend来定义一段宏片段,用%宏名即可使用该段程序。
可以将宏永久存放在sas中 使用mautosource和sasautos 具体查询帮助。
3、带参数的宏
1 %macro select(date= ); 2 proc print data=mysas.Gprsprice_order; 3 where date=&date; 4 run; 5 %mend; 6 %select(date ='201110');
注意:在使用中参数的类型要和数据集中对应变量的类型保持一致。