仅在sas中使用宏变量创建(%let)创建宏

时间:2018-06-13 00:30:04

标签: macros sas

您好我正在尝试创建一个仅包含宏变量创建的宏但它失败了。这是一个例子:

%macro createvariable; 
    %let a = 5;
    %let b = 6;
%mend createvariable;
%createvariable; 

data test; 
    c = &a + &b;
run;

但它会起作用:

%macro createvariable; 
    %let a = 5;
    %let b = 6;
data test; 
    c = &a + &b;
run;
%mend createvariable;
%createvariable; 

所以我想知道SAS是否无法创建只创建宏变量的宏?或者有办法解决这个问题。感谢。

1 个答案:

答案 0 :(得分:2)

尝试

%macro createvariable; 
%global a b;
    %let a = 5;
    %let b = 6;
%mend createvariable;
%createvariable; 

data test; 
    c = &a + &b;
run;