Evaluation étrange des fonctions ENT et MOD

Le
Yves Michel
Bonjour

Avec Excel PRO 2003, je constate avec surprise des résultats erronés avec
les fonction ENT et MOD.

Si les cellules A1:A4 contiennent respectivement ( 0,7 ; 0,2 ; 0,1 ; -1)
dont la somme vaut zéro

Toute autre combinaison que celles-ci renvoient une valeur fausse (-1)
=ENT(A1+A3+A2+A4) =ENT(A2+A3+A1+A4) =ENT(A2+A3+A4+A1)
=ENT(A3+A1+A2+A4) =ENT(A3+A2+A1+A4) =ENT(A3+A2+A4+A1)
=ENT(A3+A4+A2+A1) =ENT(A4+A3+A2+A1)

Toute autre combinaison que celles-ci renvoient aussi une valeur fausse (+1)
=MOD(A1+A3+A2+A4;1) =MOD(A2+A3+A1+A4;1) =MOD(A2+A3+A4+A1;1)
=MOD(A3+A1+A2+A4;1) =MOD(A3+A2+A1+A4;1) =MOD(A3+A2+A4+A1;1)
=MOD(A3+A4+A2+A1;1) =MOD(A4+A3+A2+A1;1)

Autre exemple : Si les cellules A1:A4 contiennent respectivement ( 0,5 ; 0,3
; 0,2 ; -1 )
Ces combinaisons renvoient une valeur fausse (+1)
=MOD(A1+A3+A4+A2;1) =MOD(A3+A1+A4+A2;1)
=MOD(A3+A4+A1+A2;1) =MOD(A4+A3+A1+A2;1)

Dernier exemple avec le triplet ( 0,59 ; 0,41 ; -1)
=MOD(A1+A2+A3;1) et =MOD(A2+A1+A3;1) renvoient bien 0 mais toute autre
combinaison renvoie une valeur fausse (1).

Les résultats observés sont identiques en basculant entre le format
"Standard" ou "Nombre (4 chiffres) et/ou en cochant ou pas "Calcul avec la
précision au format affiché".
Ces calculs n'ont aucun intérêt sauf peut-être à mettre en évidence un
problème !!

Ai-je un problème dans Excel (toutes les mises à jour sont faites) ?
Ou doit-on avec ces fonctions utiliser obligatoirement un argument déjà
évalué ?
L'aide d'Excel ne signalant rien de tel, je me tourne vers les spécialistes
chevronnés que vous êtes.

Merci beaucoup.
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Modeste
Le #5388231
Bonsour® Yves Michel avec ferveur ;o))) vous nous disiez :
l'addition sous Excel à l'aide de l'operateur "+" s'effectue en format interne
binaire
l'erreur dans ce cas est due à la représentation des nombres négatifs, c'est un
phénomêne d'approximation décimale qui provoque cet affichage erronée
il existe de la litterature la-dessus
http://translate.google.com/translate?sourceid=navclient&hl=fr&u=http%3a%2f%2fwww%2ecpearson%2ecom%2fexcel%2frounding%2ehtm

privilégier quand cela est possible la fonction SOMME
=SOMME(A4;A1;A3;A2)

@+
;o)))
Daniel.C
Le #5388221
Bonjour.
C'est la manière de calculer d'Exel qui est en cause. XL effectue ses
calculs en binaire, d'où une double conversion décimal =>binaire et binaire
=>décimal. Il peut en résulter une perte de décimale. Dans la grande
majorité des cas, Excel sait (dieu sait comment) afficher les bons
résultats, mais parfois, il y a un dysfonctionnement.
Dans ton premier cas, par exemple, si le résultat obtenu
est -0,000000000000001, la fonction ENT renvoie logiquement -1.
Cordialement.
Daniel
"Yves Michel" 4753d448$0$25924$
Bonjour

Avec Excel PRO 2003, je constate avec surprise des résultats erronés avec
les fonction ENT et MOD.

Si les cellules A1:A4 contiennent respectivement ( 0,7 ; 0,2 ; 0,1 ; -1)
dont la somme vaut zéro

Toute autre combinaison que celles-ci renvoient une valeur fausse (-1)
=ENT(A1+A3+A2+A4) =ENT(A2+A3+A1+A4) =ENT(A2+A3+A4+A1)
=ENT(A3+A1+A2+A4) =ENT(A3+A2+A1+A4) =ENT(A3+A2+A4+A1)
=ENT(A3+A4+A2+A1) =ENT(A4+A3+A2+A1)

Toute autre combinaison que celles-ci renvoient aussi une valeur fausse
(+1)
=MOD(A1+A3+A2+A4;1) =MOD(A2+A3+A1+A4;1) =MOD(A2+A3+A4+A1;1)
=MOD(A3+A1+A2+A4;1) =MOD(A3+A2+A1+A4;1) =MOD(A3+A2+A4+A1;1)
=MOD(A3+A4+A2+A1;1) =MOD(A4+A3+A2+A1;1)

Autre exemple : Si les cellules A1:A4 contiennent respectivement ( 0,5 ;
0,3 ; 0,2 ; -1 )
Ces combinaisons renvoient une valeur fausse (+1)
=MOD(A1+A3+A4+A2;1) =MOD(A3+A1+A4+A2;1)
=MOD(A3+A4+A1+A2;1) =MOD(A4+A3+A1+A2;1)

Dernier exemple avec le triplet ( 0,59 ; 0,41 ; -1)
=MOD(A1+A2+A3;1) et =MOD(A2+A1+A3;1) renvoient bien 0 mais toute autre
combinaison renvoie une valeur fausse (1).

Les résultats observés sont identiques en basculant entre le format
"Standard" ou "Nombre (4 chiffres) et/ou en cochant ou pas "Calcul avec la
précision au format affiché".
Ces calculs n'ont aucun intérêt sauf peut-être à mettre en évidence un
problème !!

Ai-je un problème dans Excel (toutes les mises à jour sont faites) ?
Ou doit-on avec ces fonctions utiliser obligatoirement un argument déjà
évalué ?
L'aide d'Excel ne signalant rien de tel, je me tourne vers les
spécialistes chevronnés que vous êtes.

Merci beaucoup.



Yves Michel
Le #5387521
Bonsoir Modeste et Daniel,

Je vous remercie de vos réponses pertinentes.
Bravo pour votre disponibilité et rapidité à répondre.

Bonne continuation.

"Yves Michel" 4753d448$0$25924$
Bonjour

Avec Excel PRO 2003, je constate avec surprise des résultats erronés avec
les fonction ENT et MOD.

Si les cellules A1:A4 contiennent respectivement ( 0,7 ; 0,2 ; 0,1 ; -1)
dont la somme vaut zéro

Toute autre combinaison que celles-ci renvoient une valeur fausse (-1)
=ENT(A1+A3+A2+A4) =ENT(A2+A3+A1+A4) =ENT(A2+A3+A4+A1)
=ENT(A3+A1+A2+A4) =ENT(A3+A2+A1+A4) =ENT(A3+A2+A4+A1)
=ENT(A3+A4+A2+A1) =ENT(A4+A3+A2+A1)

Toute autre combinaison que celles-ci renvoient aussi une valeur fausse
(+1)
=MOD(A1+A3+A2+A4;1) =MOD(A2+A3+A1+A4;1) =MOD(A2+A3+A4+A1;1)
=MOD(A3+A1+A2+A4;1) =MOD(A3+A2+A1+A4;1) =MOD(A3+A2+A4+A1;1)
=MOD(A3+A4+A2+A1;1) =MOD(A4+A3+A2+A1;1)

Autre exemple : Si les cellules A1:A4 contiennent respectivement ( 0,5 ;
0,3 ; 0,2 ; -1 )
Ces combinaisons renvoient une valeur fausse (+1)
=MOD(A1+A3+A4+A2;1) =MOD(A3+A1+A4+A2;1)
=MOD(A3+A4+A1+A2;1) =MOD(A4+A3+A1+A2;1)

Dernier exemple avec le triplet ( 0,59 ; 0,41 ; -1)
=MOD(A1+A2+A3;1) et =MOD(A2+A1+A3;1) renvoient bien 0 mais toute autre
combinaison renvoie une valeur fausse (1).

Les résultats observés sont identiques en basculant entre le format
"Standard" ou "Nombre (4 chiffres) et/ou en cochant ou pas "Calcul avec la
précision au format affiché".
Ces calculs n'ont aucun intérêt sauf peut-être à mettre en évidence un
problème !!

Ai-je un problème dans Excel (toutes les mises à jour sont faites) ?
Ou doit-on avec ces fonctions utiliser obligatoirement un argument déjà
évalué ?
L'aide d'Excel ne signalant rien de tel, je me tourne vers les
spécialistes chevronnés que vous êtes.

Merci beaucoup.



Publicité
Poster une réponse
Anonyme