楼主: yunzhonghai
4528 10

[原创博文] 【求助】怎样在变量中同时使用宏变量和文本 [推广有奖]

  • 15关注
  • 4粉丝

讲师

8%

还不是VIP/贵宾

-

威望
0
论坛币
58 个
通用积分
1.0214
学术水平
5 点
热心指数
5 点
信用等级
1 点
经验
5785 点
帖子
291
精华
0
在线时间
443 小时
注册时间
2007-12-30
最后登录
2023-6-15

楼主
yunzhonghai 发表于 2012-7-27 11:36:32 |AI写论文
10论坛币
例如
%let indicator=size;

在后边程序调用的时候,比如要写sizepct,写&indicatorpct怎么就不对?
但是如果调用pctsize,则写成pct&indicator就是对的
怎么顺序倒了一下,就不能调用了,求解答。
我需要先写宏变量,后边加一个文本,这样该怎么实现呢?多谢,在线等

最佳答案

stormhoof 查看完整内容

&indicator.pct宏变量后面加个点试试
关键词:Indicator INDI size PCT CAT 在线 程序

本帖被以下文库推荐

沙发
stormhoof 发表于 2012-7-27 11:36:33
&indicator.pct宏变量后面加个点试试

藤椅
yunzhonghai 发表于 2012-7-27 11:43:28
补充一下,就是需要使用 宏变量+文本 的情形,而在官方使用手册里都是 文本+宏变量 的情形

板凳
mymine 发表于 2012-7-27 11:58:50
先用语句把这个宏变量+文本拼接为一个新的宏变量,再引用新的宏变量
这样应该可行

报纸
yunzhonghai 发表于 2012-7-27 12:03:04
mymine 发表于 2012-7-27 11:58
先用语句把这个宏变量+文本拼接为一个新的宏变量,再引用新的宏变量
这样应该可行
这样引用变量名是因为改变量名是过程语句中自动生成的,而且生成的变量名很多,重新定义的话更麻烦

地板
mymine 发表于 2012-7-27 12:03:05
生成新的宏变量&AA

%let indicator=size;
data _null_;
AA=compress("&indicator"||'pct');
call symput('AA',AA);
run;

7
yunzhonghai 发表于 2012-7-27 12:08:33
mymine 发表于 2012-7-27 12:03
生成新的宏变量&AA

%let indicator=size;
变量名是在过程语句中自动生成的,而且数量很多,不太可能啊

8
playmore 发表于 2012-7-27 12:22:20
嗯,就是加个点的问题了
在%let语句中连接宏变量和字符直接连着写就行了
不需要用CAT之类的命令了
playmore邀请您访问ChinaTeX论坛!!!进入ChinaTeX论坛

9
yunzhonghai 发表于 2012-7-27 12:31:01
stormhoof 发表于 2012-7-27 12:20
&indicator.pct宏变量后面加个点试试
不行啊

10
yunzhonghai 发表于 2012-7-27 12:48:04
stormhoof 发表于 2012-7-27 12:20
&indicator.pct宏变量后面加个点试试
哈哈,解决了,就是加个点的问题,多谢多谢,还有其他所有帮忙的朋友

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

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2025-12-28 14:00