楼主: flutter88
3621 4

宏编译的问题 [推广有奖]

  • 1关注
  • 1粉丝

已卖:1616份资源

教授

11%

还不是VIP/贵宾

-

威望
0
论坛币
5406 个
通用积分
0.1043
学术水平
7 点
热心指数
8 点
信用等级
1 点
经验
891 点
帖子
541
精华
0
在线时间
1629 小时
注册时间
2007-3-23
最后登录
2025-8-10

楼主
flutter88 发表于 2009-9-24 16:38:45 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
我写了一个宏,想把一个字符串(kk1 kk2 ……)赋给一个宏变量(kk),

%macro test(total);
%let kk= %do i=1 %to &total; kk&i %end;;
%put &kk;
%mend;

结果,编译时出错


46   %macro test(total);
47   %let kk= %do i=1 %to &total; kk&i %end;;
ERROR: Macro keyword DO appears as text.  A semicolon or other delimiter may be missing.
ERROR: There is no matching %DO statement for the %END. This statement will be ignored.

48   %put &kk;
49   %mend;


各位大侠们,怎么才能解决这个问题?
二维码

扫码加我 拉你入群

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

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

关键词:statement delimiter Statemen matching keyword 编译

回帖推荐

jingju11 发表于4楼  查看完整内容

3# flutter88

本帖被以下文库推荐

沙发
xiaosanmao 发表于 2009-9-24 19:37:38
data a;
ARRAY kk(*) kk1-kk5;
DO i = 1 TO dim(kk);
kk(i) =int(100*ranuni(2));
END;
output;
drop  i;
RUN;

%macro test();
%do i=1 %to 5;
proc sql;
select kk&i into: kk from a;
quit;
%put &kk;
%end;
%mend;
%test;

藤椅
flutter88 发表于 2009-9-24 21:04:12
2# xiaosanmao

这不是我想要的结果,呵呵!

板凳
jingju11 发表于 2009-9-25 00:01:00
3# flutter88



  1. %macro test(total);
  2. %let kk=;
  3. %do i=1 %to &total;
  4.   %let kk=&kk kk&i;
  5. %end;
  6. %put &kk;
  7. %mend;
  8. %test(3)
复制代码
已有 1 人评分经验 论坛币 收起 理由
bakoll + 3 + 3 精彩帖子

总评分: 经验 + 3  论坛币 + 3   查看全部评分

报纸
flutter88 发表于 2009-9-25 09:48:28
4# jingju11

好,高手,呵呵

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

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