* Use like 'Prefix:' for variable lists, but this will generate a list of variables with a suffix *; options validvarname=upcase; %global suffix varct vars; %macro suffix(dsn,suffix); %put dsn=&dsn. suffix=&suffix.; %if %index(&dsn,.) %then %do; %let lib = %trim(%upcase(%scan(&dsn.,1,.))); %let dsn = %trim(%upcase(%scan(&dsn.,2,.))); %end; %else %do; %let lib = WORK; %let dsn = %trim(%upcase(&dsn.)); %end; %let suffix = %trim(%upcase(&suffix.)); proc sql noprint; select strip(lowcase(name)) as name into :vars separated by ' ' from sashelp.vcolumn where libname = "&lib." and memname = "&dsn." and upcase(name) like "%nrstr(%%)&suffix."; %let varct = &sqlobs.; quit; %put lib=&lib. dsn=&dsn. suffix=&suffix. varct=&varct. vars=&vars.; %mend suffix; %suffix(sashelp.baseball,Bat); lib=SASHELP dsn=BASEBALL suffix=BAT varct=2 vars=natbat cratbat
... View more