Bonjour,
Quelqu'un peut-il m'expliquer pourquoi le code ci-dessous ne fonctionne pas ?
J'ai essayé d'utiliser un %eval / %sysevalf. J'arrive à avoir un résultat pour a qui est positif, mais le fait que b soit négatif créé une erreur.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 %macro essai; %let a=1.0000; %let b=-1.4512; %if (&a) > 0 %then %put "a positif" ; %else %put "a negatif"; %if (&b) > 0 %then %put "b positif" ; %else %put "b negatif"; %mend essai; %essai;
Voici l'erreur obtenue :
Merci beaucoup de votre aide."a positif"
ERROR: A character operand was found in the %EVAL function or %IF condition where a numeric
operand is required. The condition was: (&b) > 0
ERROR: The macro ESSAI will stop executing.
Partager