全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学
2259 1
2011-10-18
现状: 一个文件夹中有多个Excel文件,需要导入的只有每个excle的一张sheet ,有一份excle中有登记每份excle的文件名及批次。
需求: 希望能够批量读入多个excel 文件生成一个数据集,且根据登记表作标记(如数据来自excle1,则在数据集中有个flag为1表示数据来自excle1)。最好就是能实现我只需要登记表格,然后按单击运行SAS就可以生成一个table。
          求解~~

我之前在论坛上发现以下代码:
这个代码可以实现批量读入,但是那个表格名称需要自己一个个键入,比较繁琐。还有就是生成的是多个数据集的?

%macro ss/parmbuff;
%let i=1;
%let dsn=%scan(&syspbuff,&i);
%put &dsn;
%do %while(&dsn ne);
PROC IMPORT OUT=WORK.a&i
            DATAFILE= "D:\&dsn..xls"
            DBMS=EXCEL REPLACE;
     SHEET="sheet1";
     GETNAMES=yes;
     MIXED=NO;
     SCANTEXT=YES;
     USEDATE=YES;
     SCANTIME=YES;
RUN;

%let i=%eval(&i+1);
%let dsn=%scan(&syspbuff,&i);
%end;
%mend ss;
options nomlogic nomprint nosymbolgen;
%ss(数据1,数据2,数据3,数据4);
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2012-5-3 22:43:21
同问
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群