全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
3357 1
2006-11-30

下面这个程序在执行过程中被迫执行两次(在start excel处中断),有悖程序的连续性,请高手指点在start excel处有什么问题!不胜感激!

data a;
input x y z;
cards;
1 2 3
3 4 6
;
run;


%let data1=a; /* 输入数据表名 */
%let title="Title Test!!!"; /* 输入Title */
%let path="d:\try.xls"; /* 输入保存的路径以及文件名*/

option noxwait;
x del &path.;
x start excel;

filename body dde 'excel|sheet1!r1c1:r60000c100' notab;
filename cmds dde 'excel|system';

%let dsid1=%sysfunc(open(&data1));
%let nobs1=%eval(%sysfunc(attrn(&dsid1,nobs))+3);
%let nvar1=%eval(%sysfunc(attrn(&dsid1,nvars)));
%let dsid1=%sysfunc(close(&dsid1));

data _null_;
set &data1 end=last;
file body;
t='09'x;
if _n_=1 then do;
put &title;
put ;

put
'a' t
'a' t
'a'

;
end;
/* 输入字段名 */
put
x t
y t
z

;
if last then do;
put '!DDE_FLUSH';
file cmds;
put '[workbook.activate("sheet1")]';/*
put %unquote(%bquote('[select("r3c1:r&nobs1.c&nvar1.")]'));
put '[border(2,1,1,1,1)]';
put '[column.width(0,,false,3)]';
put '[format.font(,,,,,,11)]'; */
put %unquote(%bquote('[select("r1c1:r3c&nvar1.")]'));
put '[format.font(,,"TRUE",,,,11)]';
put '[alignment(7)]';
put %unquote(%bquote('[save.as(&path.)]'));
put '[file.close("TRUE","FALSE")]';
put '[quit]';
end;
run;

二维码

扫码加我 拉你入群

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

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

全部回复
2006-12-5 06:34:00

没测试你的程序,看了一下,语句不太好看.

尝试加一个DDE指明路径的初始化语句,不知有没有效果

二维码

扫码加我 拉你入群

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

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

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

说点什么

分享

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