|
to maurice
你的语法完全不正确,建议你要参加PROG1,PROG2和MACRO这么几门培训课程,否则你的编程效率不够高。要努力哦!
[code:bb8ed]%macro import_file;
filename getfiles pipe "dir/b D:\temp\*.txt";
data filenames;
infile getfiles;
length filename $200;
input filename;
filename=upcase(filename);
call symput('obs', _n_);
run;
%do i=1 %to &obs;
%let dsid=%sysfunc(open(filenames, i));
%let rc=%sysfunc(fetchobs(&dsid, &i));
%let filename=%sysfunc(getvarc(&dsid, %sysfunc(varnum(&dsid, filename))));
%let rc=%sysfunc(close(&dsid));
proc import out=raw&i datafile="D:\temp\&filename" dbms=tab replace;
getnames=no;
datarow=18;
run;
%end;
%mend import_file;
%import_file;[/code:bb8ed] |
|