Bonjour !
je revient pour une nouvelle question. Je suis vraiment en train de me prendre le chou avec les &. Je m'explique :
j'ai recupéré le nom des 32 académies françaises. Ainsi ACA_1 me donne aix, ACA_2 me donne amiens, etc :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 proc freq data=data noprint; tables academie/out=temp; run; data _null_; set temp; call symputx(compress("aca_" !! _N_),Academie,"G"); run;
par la suite, je l'automatise pour me creer une table par académie par rapport à 4 autres existantes
je précise que &etab est un parametre de mon macro programme, qui fait reference au type d'etablissement
(M pour maternelle, E pour ecole, C pour college, etc ...)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 %do i=1 %to 32; data &&ACA_&i._&etab; set table1_&&ACA_&i table2_&&ACA_&i table3_&&ACA_&i table4_&&ACA_&i; run; %end;
On arrive là où je bloque.
table1_&&ACA_&i me donne bien table1_aix (par exemple)
mais
&&ACA_&i._&etab ne renvoie pas aix_M.
Le probléme est là, comment assembler les macro-variables afin d'obtenir : academie_etab ?
Dsl si le probleme est bateau, les & sont quelque chose que je ne maitrise pas vraiment et ça fait un peu trop longtemps que je me prends la tête.
Si tout n'est pas clair, n'hesitez pas à me poser une question.
Je vous remercie par avance !
EDIT : bon au final, je viens d'essayer en mettant &etab_&&ACA_&i et dans ce cas il m'écrit bien etab_académie (m_aix par exemple). Cela resolve mon probleme, mais si vous avez une solution pour l'ecrire dans l'autre sens, je suis preneur
Partager