%macro ck_empty_vars(dsn=); ods listing close; proc freq data=&dsn; tables _all_; ods output OneWayFreqs=_tmp_fq; run; ods listing; *** Keep only empty vars; data _tmp_fq; set _tmp_fq; if nmiss(frequency); *** create var info for final dataset ***; length dataset $20 varname $20 varlabel $60; dataset=upcase("&dsn"); varname=scan(table, 2); varlabel=vlabelx(varname); keep dataset varname varlabel; run; data empty_vars; set empty_vars _tmp_fq; if dataset^=''; run; proc datasets lib=work nolist; delete _tmp_fq; run; quit; %mend ck_empty_vars; data empty_vars; run; %ck_empty_vars(dsn=adam.adsl); %ck_empty_vars(dsn=adam.adae);