XL 2013 Fonction de contrôle debit = credit avec un si ne fonctionne pas

Chrystel01

XLDnaute Occasionnel
Bonjour,

J'ai une balance. Quand je fais la somme du débit et du crédit, j'ai le même montant à la décimale près = 763 797,3 (ligne 2).
Pourtant la fonction de contrôle qui vérifie débit = crédit mais me renvoie une erreur (cellule F2) et je ne comprends pourquoi ?

Pourriez-vous m'aider svp ? Le fichier est en pièce jointe

Merci d'avance

Chrystel
 

Pièces jointes

  • Classeur1.xlsx
    10.7 KB · Affichages: 13
Solution
Je te l'ai dit.
Un nombre à 2 décimales ne tombe pas forcément juste en binaire. L'addition de ces petites pertes de précision font que le résultat en machine n'est pas exactement ce que tu vois.
Si tu veux connaitre la différence réelle (celle d'excel), met dans une cellule :
VB:
=(763797.3-B2)-(763797.3-C2)
tu lis 0.00
met en format Standard et tu lis : -2.32831E-10
pour excel tes 2 sommes ne sont pas égales =>nok
eric

Edit : il m'avait semblé que ça résistait avec une formule plus simple que j'utilise d'habitude mais non :
VB:
=B2-C2+0

Chrystel01

XLDnaute Occasionnel
Bonjour Eric,
Effectivement, je vois que cela fonctionne, même en faisant un arrondi (10000 chiffres au lieu de 7 après la virgule)
Je vais rajouter la fonction arrondi, mais vraiment je ne comprends pas pourquoi cela ne marche pas sans... Sais-tu pourquoi car on a les mêmes données ...?
En tout cas, merci beaucoup !!!
Bonne semaine
 

cp4

XLDnaute Barbatruc
La formule est bonne, c'est bien ce que je ne comprends pas... et si j'ajoute les arrondis suggérés par Eric, cela fonctionne...
1586266772274.png

Attention! dans le champ Valeur_si_vrai, j'ai inscrit OK, les double croches se sont ajoutés.
C'est comme ça que j'ai procédé en passant par l'assistant.
 

eriiic

XLDnaute Barbatruc
Je te l'ai dit.
Un nombre à 2 décimales ne tombe pas forcément juste en binaire. L'addition de ces petites pertes de précision font que le résultat en machine n'est pas exactement ce que tu vois.
Si tu veux connaitre la différence réelle (celle d'excel), met dans une cellule :
VB:
=(763797.3-B2)-(763797.3-C2)
tu lis 0.00
met en format Standard et tu lis : -2.32831E-10
pour excel tes 2 sommes ne sont pas égales =>nok
eric

Edit : il m'avait semblé que ça résistait avec une formule plus simple que j'utilise d'habitude mais non :
VB:
=B2-C2+0
 
Dernière édition:

Statistiques des forums

Discussions
312 166
Messages
2 085 899
Membres
103 025
dernier inscrit
sr86