楼主: wangyf0218
3165 8

局部宏引用问题 [推广有奖]

  • 0关注
  • 0粉丝

本科生

38%

还不是VIP/贵宾

-

威望
0
论坛币
11 个
通用积分
0
学术水平
2 点
热心指数
2 点
信用等级
2 点
经验
886 点
帖子
68
精华
0
在线时间
91 小时
注册时间
2011-7-9
最后登录
2017-3-14

楼主
wangyf0218 发表于 2011-7-15 11:02:12 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
%macro A(time);
data _null_;
a=&time/100
call symput('b',a);
run;
%mend;

如何在外面使用宏b?谢谢!
二维码

扫码加我 拉你入群

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

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

关键词:symput Macro time Data null 局部 调用

沙发
soporaeternus 发表于 2011-7-15 11:05:10
  1. %global b;
复制代码
Let them be hard, but never unjust

藤椅
pobel 在职认证  发表于 2011-7-15 11:10:02
也可以用 call symputx('b',a,"G");
和谐拯救危机

板凳
wangyf0218 发表于 2011-7-15 11:47:26
我原来尝试了用%global b;
但是出现错误
error:试图%global本地环境b(差不多是这样。),sas在做别的事,现在看不到,这是怎么回事?

报纸
pobel 在职认证  发表于 2011-7-15 11:55:45
1373  %macro A(time);
1374  %global b;
1375  data _null_;
1376  a=&time/100;
1377  call symput('b',a);
1378  run;
1379  %mend;
1380
1381  %a(200)

NOTE: Numeric values have been converted to character values at the places given by:
      (Line):(Column).
      1:45
NOTE: DATA statement used (Total process time):
      real time           0.01 seconds
      cpu time            0.01 seconds


1382  %put &b;
2
和谐拯救危机

地板
456852 发表于 2011-7-15 12:00:59
wangyf0218 发表于 2011-7-15 11:47
我原来尝试了用%global b;
但是出现错误
error:试图%global本地环境b(差不多是这样。),sas在做别的事,现在看不到,这是怎么回事?
在这个宏前面用%global b;不是在宏里面用。

7
wangyf0218 发表于 2011-7-15 13:56:48
恩,问题就是出在这里,谢谢啦。。
sas小白很多问题,多谢大家。

8
bobguy 发表于 2011-7-16 11:40:01
wangyf0218 发表于 2011-7-15 11:02
%macro A(time);
data _null_;
a=&time/100
call symput('b',a);
run;
%mend;

如何在外面使用宏b?谢谢!
Why not use simpler one as,

%let b=%sysevalf(&time*0.01);

9
leedx 发表于 2011-7-18 18:22:26
或者试试间接引用宏变量试试~~~

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

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2026-1-8 01:36