P.S. The other approach I tried was to set the filename value in the %let statement as you have indicated, but concatenated with a nested macro variable using ||. That approach didn't work, such as the following -- perhaps for similar reason that the concat errored out?
______________________________________
%let yrmon = '2009_09';
%let filenm = 'I:\1 Commissions\PPA\Audit\' || &yrmon || '\insues_091409.xls';
-------------------------------------------------------------------
Then, when the above value &filenm is used in the proc export, the following error is issued:
230 %macro exportxl (setnm = );
231 PROC EXPORT DATA= &setnm
232 OUTFILE= &filenm
233 DBMS=EXCEL REPLACE;
234 SHEET=&setnm;
235 RUN;
236 %mend exportxl;
237
238 %exportxl (setnm = p2);
1 'I:\1 Commissions\PPA\Audit\' || '2009_09' || '\insues_091409.xls'
ERROR 22-322: Syntax error, expecting one of the following: ;, DATA, DBMS, FILE, OUTFILE,
OUTTABLE, REPLACE, TABLE.