Bonjour,
Je souhaiterais récupérer le résultat d'une macro dans une variable.
La macro :
L'étape data :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 %macro FoundInTable(MyTable, MyVar, MyValue); %global FoundInTable; %let FoundInTable=FALSE; proc sql noprint; SELECT COUNT(1) INTO :NbOcc FROM &MyTable WHERE &MyVar=&MyValue; quit; %If &NbOcc gt 0 %THEN %let FoundInTable=TRUE; &FoundInTable %mend;
Je me suis inspiré d'un autre post pour la syntaxe sans point-virgule à la fin de la macro. Mais je cale sur la syntaxe
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 data titi; set titi; Length toto $8; toto=Symget('%FoundInTable(l.ListeCodes, crem, ''10000S'')'); if toto=TRUE and tutu>0 then tata=1; run;
Code : Sélectionner tout - Visualiser dans une fenêtre à part toto=Symget('%FoundInTable(l.ListeCodes, crem, ''10000S'')');
Si quelqu'un a une idée je suis preneur.
Merci![]()
Partager