SAS宏变量变化

标签 sas sas-macro

一般我们如何处理宏内部需要修改宏变量的情况;例如,假设我有这个宏:

%macro test (arg=); 
array arrayone [&arg];   /* This is ok */
array arraytwo [&arg+1] /* This is not ok. How to make it work? */ 
... 

当我想要 %test(3) 然后我们如何管理这些情况
arraytwo 需要取维度 4... ?

最佳答案

将其更改为
array arraytwo[%EVAL(&ARG + 1)] ;

关于SAS宏变量变化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5430299/

相关文章:

macros - 刷新宏库

java - 从 SAS 调用 java 类。错误: Could not find class

sas - 如何使用 PROC REPORT 和 ODS RTF 输出创建漂亮的表

SAS 间接宏处理

mysql - 在 SAS 中比较单元格条目和返回值

sas - 按组划分的 SAS 中的日期差异

sas - 通过两列创建行号列 SAS

sql - 在SQL语句中执行宏

sas - SAS 9.3 中的 "For in"循环等效项

sas - 将自动调用库转换为存储的编译宏