全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
1500 7
2011-08-08
我写了一组程序

%let hour=18

proc mean...
proc sql...
create table...
proc reg...

.
.
.}
然后我想改变其中hour 的值,使hour的值可以从1:24;
但是我试了%do hour=1 %to 24, 但是提示%do is not valid in open code,
我对%macro 不熟悉,所以想请教一下用宏该怎么写,谢谢了。
二维码

扫码加我 拉你入群

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

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

全部回复
2011-8-8 07:16:06
%do语句只能在宏的内部(%macro 和%mend之间)
*** Define a macro;
%macro test;
     %do hour=1 %to 24;
            %put hour is &hour.;
    %end;
%mend;

*** Invoke a macro;
%test
二维码

扫码加我 拉你入群

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

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

2011-8-8 07:43:29
%macro A;
%do hour=1 %to 24;

proc mean...
proc sql...
create table...
proc reg...

.
.
.
%end;
%mend;

%A;/*运行
二维码

扫码加我 拉你入群

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

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

2011-8-8 07:46:06
顶楼上的,都是高人
二维码

扫码加我 拉你入群

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

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

2011-8-8 09:05:20
谢谢,原来宏要用%A;来运行的,我说怎么不报错也不运行呢。 问题解决了,非常感谢。
二维码

扫码加我 拉你入群

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

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

2011-8-8 09:08:42
,呵呵,学习啦~~~
二维码

扫码加我 拉你入群

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

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

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

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