/* prODSuni.sas Daniel Brockman 070510 use proc print for ODS tables */ %macro prODSuni(dsn,vv) ; /* Runs proc univariate within ODS, then proc print for variable vv * in data set dsn */ %local tablist ; * list of tables ; %local i j k ; * aux ; %let tablist=Moments BasicMeasures TestsForLocation Quantiles ; %let tablist=&tablist ExtremeObs MissingValues ; %let i = 0; %do %while (%scan(&tablist,&i+1) ne ) ; /* loop the list of tables */ %let i = %eval(&i+1); %let j = %scan(&tablist,&i) ; /* pick off next table */ ods output &j = &j ; /* ods output table = dataset */ proc univariate data = &dsn ; var &vv ; run; ods output close ; proc print data=&j ; run; %end ; /* do while scan */ %mend prODSuni ; /* ----------------------------------------------------------- */