%let count=1;
%global &prefix&count &prefix._count;
%let &prefix&count=%qscan(&str,&count,&split);
%do %while(&&&prefix&count ne);
%let count=%eval(&count+1);
%global &prefix&count;
%let &prefix&count=%qscan(&str,&count,&split);
%end;
%let &prefix._count=%eval(&count-1);
%mend;
%macro ren(set,var);
%callvar(&var,var,%str( ));
data a1;set &set;
%do z=1 %to &var_count;
%do j=1 %to 22;
%let i=%eval(&j+4);
rename &&var&z..&i=new_&&var&z..&j;
%end;
%end;
run;
%mend;
%ren(test,CMTRT CMDOST);
test有十几个变量,变量后缀从5到26
现在想将变量后缀变成从1到22;
请问我的程序那里错了???
help!!!



雷达卡





京公网安备 11010802022788号







