SAS中文论坛

 找回密码
 立即注册

扫一扫,访问微社区

查看: 665|回复: 0
打印 上一主题 下一主题

请教一个关于宏工具输入输出的问题%window 谢谢

[复制链接]

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
楼主
 楼主| 发表于 2009-6-3 19:17:33 | 只看该作者

请教一个关于宏工具输入输出的问题%window 谢谢

%macro rtff;
%do n=1 %to &aa;
#&n  @80 tff&n 15 attr=underline
%end;
%mend rtff;

%window windowi
# 0 @3 "Pleast input how many kinds of nutrient you cared about"
   @80 aa 1 attr=underline;

%window  www
# 0 @80 "input the values"  
%rtff;

%macro test;

%global aa;
%display windowi;
%put &aa;

%rtff;
%do i=1 %to &aa;
%global tff&i;
%end;


%display www;

%do i=1 %to &aa;
%put &&tff&i;
%end;

%mend test;
%test;

这个程序是简化的,目的是想根据用户的需要来输入一系列的宏参数,假设用户关心的是3个相关的变量,于是先用%window windowi 的宏参数aa来记录个数,然后再根据aa的具体数据生成重复文本#&n  @80 tff&n 15 attr=underline,这个重复文本是
%macro rtff 来实现的。然后在%window www里面调用宏rtff。可是好像1是#&n有问题,另一个就是aa的值传到%window www中有问题,因为我运行这个程序第一遍的时候报错是:
    #1
      -
      180

ERROR 180-322: Statement is not valid or it is used out of proper order.

然后运行第二遍的时候,报错依然没有变,但是功能是可以实现了,只是aa是上一次运行的aa的值。
为什么这个程序不可以实现呢?
有劳大家帮忙啦!
回复 支持 反对

使用道具 举报

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

本版积分规则

QQ|小黑屋|手机版|Archiver|SAS中文论坛  

GMT+8, 2026-2-5 17:52 , Processed in 0.083173 second(s), 20 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表