1、我参考的网页:
https://blog.csdn.net/Milong_xiao/article/details/84108862
2、我自己编程:
- filename folder pipe "dir D:\DATA\CSMAR-个股月回报数据\*.xls /b" lrecl=32767;
- data files;
- infile folder truncover;
- input filename $char1000.;
- call symput("rows", _n_); * 导入了多少个文件,即data files中的行号;
- run;
- %macro importfiles(path, files, rows);
- %do i=1 %to &rows.;
- data &test.;
- set &data.;
- if _n_ = &i.;
- * 将取出的文件名,赋值到macro变量file;
- call symput("files", trim(filename));
- * 因为sas data set不能使用中文命名,所以这里根据文件名的实际进行了重命名,需要根据实际需求更新;
- call symput("outname", cat(substr(filename,1,3), &i.));
- run;
-
- proc import out = &outname.
- datafile="&path.&files."
- dbms = excel replace;
- getnames = yes;
- run;
- %end;
- %mend;
- %importfiles(D:\DATA\CSMAR-个股月回报数据\, files, &rows.);



雷达卡




京公网安备 11010802022788号







