楼主: 挞挞
1508 1

[问答] 宏程序中执行宏程序循环 [推广有奖]

  • 0关注
  • 0粉丝

本科生

46%

还不是VIP/贵宾

-

威望
0
论坛币
665 个
通用积分
2.2000
学术水平
1 点
热心指数
1 点
信用等级
0 点
经验
1746 点
帖子
14
精华
0
在线时间
181 小时
注册时间
2015-10-14
最后登录
2025-8-8

楼主
挞挞 发表于 2017-7-31 16:19:06 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
导入数据后,希望可以直接执行宏程序。希望是多个表导入,均执行相同的宏程序。
将宏程序%ahp_cal(matrix&i.,matrixs&i.)写入后,程序无法循环,执行完%ahp_cal(matrix1.,matrixs1)就停止了。
有没有大神给个好办法,如何在宏程序中执行宏程序的循环。
%macro import_file(num);
      %do i=1 %to &num %by 1;
         %let filename=sheet&i.;
         proc import datafile="&datafile"
             out=matrix&i dbms=excel replace;
             sheet=&filename.;
             getnames=yes;
        run;
         %ahp_cal(matrix&i.,matrixs&i.);*希望循环的宏程序;
      %end;
%mend import_file;
二维码

扫码加我 拉你入群

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

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

关键词:宏程序 filename replace matrix import

沙发
挞挞 发表于 2017-8-1 09:02:39
程序没有问题,由于调用的宏程序中哪个循环使用的&i,造成了无法进行循环。在导入宏程序中,将i=1 换成a=1 即可解决。

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

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