Bonjour,
Je n'ai jamais eu de cours sur les macros sas, et j'essaye d'apprendre par moi-même. Evidemment, je fais face à quelques problèmes.
Je possède plusieurs bases, un par année de 1992 à 2007 avec exactement les mêmes variables dans chaque base. J'aimerai mettre tout ces fichiers en ligne, de facon à n'avoir plus qu'une base, regroupant toutes les années. Pour cela je dois renommer mes variables dans chaque base, car sinon, portant le même nom, elles vont s'écraser. J'ai aussi des variables que je ne veux pas garder (d'où le drop) et un format date.
Sans macro, pour l'année 1992 cela donne ca :
Je voudrais donc faire une macro pour m'éviter de répéter ce programme jusqu'en 2007. J'ai essayé différentes choses, mais j'ai toujours des tas d'erreurs.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 data b.an1992 ; set b.an1992 ; length dateinf92 4. duree92 4. codesanc92 $2. cptpoint92 typesanct92 $1. anneeinf92 4.; dateinf92 = dateinf; anneeinf92 = anneeinf ; duree92 = duree ; codesanc92 = codesanc ; cptpoint92 = cptpoint ; typesanct92 = typesanct ; format dateinf92 YYMMDD10. ; drop dateenrinf duree dateinf codesanc cptpoint typesanct datedeci datenotif codeart1 codeart2 codeart3 codeart4 codeart5 heureinf coderecep autosanct anneeinf ; run;
Auriez vous une idée de la facon de faire ?
Merci de votre aide
Partager