call symput dans une macro
Bonjour à tous,
J'aurai besoin de vos lumières, je bloque sur un call symput dans un macro programme... Chose étrange, ca fonctionne bien qd je sors du macro prg..???
voila mon code:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
| %macro transp(trspvar=,subtrspvar=, indata=);
proc sql noprint;
create table NBGRP as
select distinct count (distinct &trspvar.) as TOTNBGRP, &trspvar.
from &indata.
;
quit;
data _null_;
set NBGRP;
call symput("GRPNB"||compress(put(_N_,1.)),put(VISITNUM,3.));
run;
/*
proc sql;
%do i=1 to &nbsubgrp.
select count (distinct &subtrspvar.) into :nbsubgrp&i.
from &indata.(where=())
; */
%mend transp;
%transp(trspvar=VISITNUM,subtrspvar=CATEG,indata=TAB9);
%put _user_;
data _null_;
set NBGRP;
call symput("GRPNB"||compress(put(_N_,1.)),put(VISITNUM,3.));
run;
%put _user_; |
le put(_n_,1.) ne pose pas de soucis, j'ai deux lignes dans ma table.
Merci d'avance,
manoutz