楼主: farshot
21746 17

[原创博文] 请教各位,如何用SAS批量导入一个文件夹内的所有EXCEL文件? [推广有奖]

  • 0关注
  • 0粉丝

高中生

90%

还不是VIP/贵宾

-

威望
0
论坛币
1 个
通用积分
0
学术水平
0 点
热心指数
1 点
信用等级
0 点
经验
985 点
帖子
45
精华
0
在线时间
24 小时
注册时间
2007-10-8
最后登录
2024-5-2

楼主
farshot 发表于 2012-9-6 18:42:26 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
我想做的事把一个文件夹内的所有EXCEL文件批量导入到SAS里,从而进行进一步分析。

单个EXCEL 文件是会导入,我做的编码如下:
proc import datafile="D:\Excel\xxxx.xls"
out =e.xxxx
dbms=excel
replace;
getnames=yes;
run;

但是批量导入的话,就不会了,
而且文件夹里的每一个EXCEL文件名都不一样,没有规律。
每个EXCEL 文件包含一个工作表
工作表的名字和EXCEL 文件的名是一样的,

渴求各位高手帮忙~
二维码

扫码加我 拉你入群

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

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

关键词:EXCEL 批量导入 xcel exce 如何用 import 文件夹 工作表 EXCEL Excel

回帖推荐

Imasasor 发表于2楼  查看完整内容

教你个简单的方法,在文件夹里新放一个空的excel,然后全选所有的文件,在你新建的excel上鼠标右键,重命名,随便起个名字,然后所有的文件就有规律了,有规律后使用下面的宏

本帖被以下文库推荐

沙发
Imasasor 发表于 2012-9-6 18:46:48
教你个简单的方法,在文件夹里新放一个空的excel,然后全选所有的文件,在你新建的excel上鼠标右键,重命名,随便起个名字,然后所有的文件就有规律了,有规律后使用下面的宏
  1. %macro excel(datapath=,dataname=,datanum=);
  2. %do i=1 %to &datanum;
  3. proc import datafile="&datapath&dataname (&i).xls"
  4. out=&dataname&i replace;
  5. %end;
  6. %mend;
  7. %excel(datapath=C:\Documents and Settings\chao\桌面\上海宝山\生化结果\,dataname=bs_sh,datanum=8);
复制代码
已有 2 人评分经验 学术水平 热心指数 信用等级 收起 理由
eijuhz + 20 + 1 精彩帖子
JaneAdrift + 1 + 1 + 1 精彩帖子

总评分: 经验 + 20  学术水平 + 2  热心指数 + 1  信用等级 + 1   查看全部评分

欢迎加入亚太地区第一R&Python数据挖掘群: 251548215;

藤椅
YueweiLiu 发表于 2012-9-6 22:40:10
unnamed pipe,批量获取某文件夹下内的特定文件名,然后再批量做后续操作,如:
  1. filename indata pipe "dir d:\sas\xml /b";
  2. data vname;
  3. length fname $20.;
  4. infile indata truncover;
  5. input fname $20.;
  6. call symput ('nvars',_n_);
  7. run;
  8. %macro want;
  9. %do i=1 %to &nvars.;
  10.         data _null_;
  11.                 set vname;
  12.                 if _n_=&i;
  13.                 call symput ('file',fname);
  14.         run;
  15.         data tmp;
  16.                 infile "d:\sas\xml\&file." firstobs=2;
  17.                 input x y z;
  18.         run;
  19.         proc datasets;
  20.                 append base=want data=tmp;
  21.         quit;
  22. %end;
  23. %mend;
  24. %want
复制代码
已有 1 人评分学术水平 收起 理由
冰棱 + 1 精彩帖子

总评分: 学术水平 + 1   查看全部评分

板凳
YueweiLiu 发表于 2012-9-6 22:41:03
Imasasor 发表于 2012-9-6 18:46
教你个简单的方法,在文件夹里新放一个空的excel,然后全选所有的文件,在你新建的excel上鼠标右键,重命名 ...
欢迎加入亚太地区sas数据分析与统计第一群:144839730

这名字太霸气了!

报纸
farshot 发表于 2012-9-9 19:03:52
Imasasor 发表于 2012-9-6 18:46
教你个简单的方法,在文件夹里新放一个空的excel,然后全选所有的文件,在你新建的excel上鼠标右键,重命名 ...
虽然名字全部被被改掉了,在SAS里找想要找的文件很麻烦,但还是学了一招~谢谢

地板
200773023 发表于 2013-9-21 21:39:28
第一个比较牛逼,第二个没管事儿,是我太菜了。。。

7
flownait 发表于 2014-8-8 16:42:46
YueweiLiu 发表于 2012-9-6 22:40
unnamed pipe,批量获取某文件夹下内的特定文件名,然后再批量做后续操作,如:
相当有用的一段代码,谢谢分享了,之前还接触过用x直接存在一个txt文件然后在导入,这个方法更直接

8
huangpengfei 发表于 2014-8-27 19:27:29
Imasasor 发表于 2012-9-6 18:46
教你个简单的方法,在文件夹里新放一个空的excel,然后全选所有的文件,在你新建的excel上鼠标右键,重命名 ...
这个方法的确简便。

9
512002855 发表于 2015-11-7 21:41:36
Imasasor 发表于 2012-9-6 18:46
教你个简单的方法,在文件夹里新放一个空的excel,然后全选所有的文件,在你新建的excel上鼠标右键,重命名 ...
您太厉害了。这个方法,是我见过最方便的批量有规律修改文件名的方法。
无论如何我也想不出其中的逻辑是怎么回事。
请教您一下,这种方法的来源是哪里啊?是哪本书?还是哪个网站?
非常感谢!

10
512002855 发表于 2015-11-7 21:49:56
Imasasor 发表于 2012-9-6 18:46
教你个简单的方法,在文件夹里新放一个空的excel,然后全选所有的文件,在你新建的excel上鼠标右键,重命名 ...
您太厉害了。这个方法,是我见过最方便的批量有规律修改文件名的方法。
无论如何我也想不出其中的逻辑是怎么回事。
请教您一下,这种方法的来源是哪里啊?是哪本书?还是哪个网站?
非常感谢!

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2026-1-2 08:42