Use the MacroArray package.
1) Documentation
2) Article
%macro inf_value(ttt,information_value,numeric_Vars,Ind_Failure);
%put [&sysmacroname.] &numeric_Vars.;
data _null_;
&numeric_Vars.=42;
put _all_;
run;
%mend;
%loadPackage(macroArray)
/* macroarray */
%array(varsList[*] a_Shir_SmlHov_Pigur a_Shir_AKM_HZRHIUV a_Shir_Vetek_age_Balut a_CDO_ExCC_mx_pos_prob
,vnames=Y
,macarray=Y)
/* loop over macroarray calling %inf_value() macro */
%do_over(varsList,phrase=%nrstr(
%inf_value(ttt,information_value,%varsList(&_i_.),Ind_Failure);
))
/* clean up after using macroarray */
%deleteMacArray(varsList,macarray=Y)
Bart
... View more