SAS中文论坛

标题: SAS宏变量解析的一个问题 [打印本页]

作者: shiyiming    时间: 2010-9-13 12:59
标题: SAS宏变量解析的一个问题
例子如下:我大概表达了下我的意思。ab会被付给很多值比如:RCT1,RCT100,RCT1023等等,当ab为'RCT1','RCT2','RCT3'三个中的一个时,要执行一个操作,否则执行另个操作。CODE如下,这个CODE的问题出在哪里?
[code:1c6mxh18]%macro test(ab=);
   
  %if &ab ^in ('RCT1','RCT2','RCT3') %then %do;
    data one;
         x=1;
        run;
  %end;
  %else %do;
data two;
  x=2;
run;
  %end;
%mend test;

%test(ab=RCT1);[/code:1c6mxh18]
作者: shiyiming    时间: 2010-9-13 15:21
标题: Re: SAS宏变量解析的一个问题
错在如果我没记错,宏语言就没有 IN 这个操作符
作者: shiyiming    时间: 2010-9-13 16:37
标题: Re: SAS宏变量解析的一个问题
9.2中才可以在宏中使用in操作符
<!-- m --><a class="postlink" href="http://support.sas.com/kb/35/591.html">http://support.sas.com/kb/35/591.html</a><!-- m -->
作者: shiyiming    时间: 2010-9-13 17:43
标题: Re: SAS宏变量解析的一个问题
把引号去掉试一试。
作者: shiyiming    时间: 2010-9-15 09:30
标题: Re: SAS宏变量解析的一个问题
非常感谢大家对我的帮助。




欢迎光临 SAS中文论坛 (https://mysas.net/forum/) Powered by Discuz! X3.2