楼主: liehuodgq
2717 3

[统计软件] 如何用SAS中的DOS命令获取xlsx文件并将其转换为SAS数据集 [推广有奖]

  • 0关注
  • 0粉丝

高中生

92%

还不是VIP/贵宾

-

威望
0
论坛币
16 个
通用积分
0.0797
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
773 点
帖子
31
精华
0
在线时间
30 小时
注册时间
2015-11-23
最后登录
2021-11-20

楼主
liehuodgq 发表于 2016-1-7 09:57:43 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
如何用SAS中的DOS命令获取指定目录文件夹下的xlsx文件名,并将其导入SAS系统转换成SAS数据集?
二维码

扫码加我 拉你入群

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

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

关键词:sas数据集 xlsx文件 xlsx 如何用 xls 如何

热爱生活,感悟生活!

沙发
liehuodgq 发表于 2016-1-7 10:00:52

%let folder=D:\;
%let sysd=%sysfunc(today(),yymmddn8.);

%put &sysd;

options noxwait xsync;

x "dir/s &folder > &folder.dir.txt";

data readfile(drop=datestring);
infile "&folder.dir.txt" firstobs=8 missover;

input @1 date:yymmdd10. time &:time.
     bytes :comma. filename :$200.;
format date yymmdd10. time time. bytes comma18.;
run;

x "erase &folder.dir.txt";

data file1;
set readfile;
length type $12.;
if date ne . and bytes ge 5;
type=scan(filename,-1,".");
if type eq 'xlsx';
type1=scan(filename,1,".");
if find(type1,compress(&sysd))>0;
run;

data file1;
  set file1;
  n=_n_;
run;
proc sql noprint;
   select max(n) into :varno
         from file1;
quit;
%put &varno;

%macro xlsx2sas();
%do i=1 %to &varno;
proc sql noprint;
select filename into :xlsxn
       from file1
                where n=&i
;quit;
%put &xlsxn;
%let route=%sysfunc(cats(&folder,\,&xlsxn));
%put &route;
proc import datafile="&route" out=xlsx&i. dbms=xlsx replace;run;

%end;
%mend;

%xlsx2sas;

藤椅
shuangfm 发表于 2016-1-13 09:56:03 来自手机
liehuodgq 发表于 2016-1-7 10:00
%let folder=D:;
%let sysd=%sysfunc(today(),yymmddn8.);

谢谢分享

板凳
旦旦爱琪琪 发表于 2017-2-6 12:44:51
顶!d=====( ̄▽ ̄*)b

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

本版微信群
jg-xs1
拉您进交流群
GMT+8, 2026-1-2 10:44