【发布时间】:2022-12-05 19:48:49
【问题描述】:
我的代码将表格从 SAS 导出到文件夹中的 excel 文件。 如果我将变量测试设置为 1,我的目标是将导出文件夹更改为测试文件夹。 这是我的代码:
/*Delete .bak files*/
%macro xlsx_bak_delete(file, file_name) / des='Delete backup spreadsheets';
option mprint notes;
data _null_;
fname = 'todelete';
rc = filename(fname, "&file.&file_name..xlsx.bak");
rc = fdelete(fname);
rc = filename(fname);
run;
%mend xlsx_bak_delete;
/*Export*/
%macro ExportExcel(path,file_name,table_name);
proc export data=&table_name
outfile="&path.&file_name..xlsx"
dbms=xlsx
replace;
;
run;
%xlsx_bak_delete(&export_path, &file_name)
%mend;
%LET test = 1
%IF test = 1 %then %do;
/*TEST export path */
%Let export_path = \\Bfd1\b00369\Afdeling\HS-OKO\Oko\Likviditet\Likviditetsstyring\LCR\Daglig LCR - Axiom\Test\;
%end;
%else %do;
/*Export path*/
%Let export_path = \\Bfd1\b00369\Afdeling\HS-OKO\Oko\Likviditet\Likviditetsstyring\LCR\Daglig LCR - Axiom\Test_prod\;
%end;
/*Datetiemstamp macro*/
%let fileTimeStamp = %sysfunc(date(), ddmmyyd10.)_%sysfunc(putc(%sysfunc(time(), b8601TM6.), $6.)) ;
%put &fileTimeStamp.;
%ExportExcel(&export_path,DAGLIGEKORREKTIONER_&fileTimeStamp.,QUERY_FOR_DAGLIGEKORREKTIONER);
问题是我的代码只导出到 test_prod 文件夹,如果 test = 0 或 1,则没有任何变化,这是为什么?
【问题讨论】:
标签: sas