楼主: bluehaiku
2282 3

为什么我宏程序运行正确,却得不到所要的宏变量, [推广有奖]

  • 10关注
  • 2粉丝

已卖:16份资源

讲师

75%

还不是VIP/贵宾

-

威望
0
论坛币
795 个
通用积分
14.0008
学术水平
5 点
热心指数
5 点
信用等级
5 点
经验
8765 点
帖子
212
精华
0
在线时间
639 小时
注册时间
2015-11-12
最后登录
2025-6-7

楼主
bluehaiku 发表于 2016-9-18 19:55:21 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
如图所示,结果显示宏变量count1 没有解析。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:得不到 宏程序 Count 结果显示 如图所示 程序

Image 020.jpg (98.25 KB)

Image 020.jpg

沙发
huyiustc 发表于 2016-9-18 20:18:41
(1)引用宏变量要加&
%fuzhi(name=&maValue);

(2)在macro fuzhi里面定义的宏变量是local的不能在宏外面引用,如果要在外面用可以用global定义全局宏变量
在macro内部count1是可以被解析的


%macro fuzhi(name=maValue);
%do i=1 %to 4;
   %if %scan(&name,&i," ") NE " " %then %do;
   %let count&i.=%scan(&name,&i," ");
   %put &&count&i;
   %put *************;
   %end;
%end;

%put %%%%%%%%%%%%%;
%put &count1;
%put %%%%%%%%%%%%%;

%mend;

%fuzhi(name=&maValue);

藤椅
huyiustc 发表于 2016-9-18 20:22:30
*使用global,但是使用global一定要慎重,容易出错;
%macro fuzhi2(name=maValue);
%do i=1 %to 4;
   %if %scan(&name,&i," ") NE " " %then %do;
   %global count&i  ;
   %let count&i.=%scan(&name,&i," ");
   %end;
%end;
%mend;

%fuzhi2(name=&maValue);
%put &count1;

板凳
bluehaiku 发表于 2016-9-19 08:07:58
huyiustc 发表于 2016-9-18 20:22
*使用global,但是使用global一定要慎重,容易出错;
%macro fuzhi2(name=maValue);
%do i=1 %to 4;
Thank you very much

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

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