楼主: smluyi
1569 0

关于宏的一点小问题 高手指点下 [推广有奖]

  • 0关注
  • 0粉丝

高中生

50%

还不是VIP/贵宾

-

威望
0
论坛币
64 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
253 点
帖子
26
精华
0
在线时间
0 小时
注册时间
2008-3-6
最后登录
2008-12-10

楼主
smluyi 发表于 2008-6-17 17:06:00 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币

data base1;
length id $2;
 input id num value;
 
 cards;
 A 3 1
 B 2 4
 C 1 2
 D 5 3
 E 4 1
 ;run;
 data base2;
length id $2;
 input id num value;
 
 cards;

 B 3 4
 C 2 5
 D 3 4
 E 4 2
 ;run;

%macro aa;
  %let id1=%sysfunc(open(base2,i));
        %let _id=%sysfunc(varnum(&id1,id));
  %do %while(%sysfunc(fetch(&id1)) eq 0);
        %let id=%sysfunc(getvarc(&id1,&_id));
  
data aa;
set base1;
where &tt=&id;
run;
%end;
  %let rc=%sysfunc(close(&id1));
%mend;

%let tt=id; %aa;

学习的时候瞎凑的表 原意是想把base1中id在base2中的取出,但是运行后出现     ERROR: 变量“E”不在文件 WORK.BASE1 中。

可以看到base1中明明是有E的啊,这是什么原因呢?要如何解决呢?


[此贴子已经被作者于2008-6-19 9:10:27编辑过]

二维码

扫码加我 拉你入群

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

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

关键词:高手指点 小问题 sysfunc length value 高手 指点

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

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