Note that adding a patch, %lowcase(), on top of a patch , %trim(), on top of a patch, compress(), is going to make your code harder to understand and debug.
You could also just get rid of all of the macro logic. It is much easier to debug SAS code instead of macro code.
%macro Convert2CSV(LIBNAME);
data members;
set sashelp.vmember(where=(LIBNAME = %upcase("&Libname"));
obs+1;
length filename $200;
filename=quote(cats('C:\mypath\output\',lowcase(memname),'.csv'));
call execute(catx(' '
,'proc export dbms=csv data=',catx('.',libname,nliteral(table))
,'outfile=',filename,';run;'
));
keep obs libname memname filename;
run;
%mend Convert2CSV;
... View more