Incompréhensible erreur d'addition avec VBA

Bonjour,

Je travaille sur un tableau permettant de calculer des superficies et lors de l’exécution de mon code, je me suis rendu compte que Vba avait un problème avec une addition.

Et je n'arrive pas comprendre pourquoi il me dit que 0.528 + 0.162 = 0.69 est Faux.

2021 11 27

Quelqu'un peut éclairer ma lanterne ?

Merci d'avance

Bonsoir,

Vos valeurs ne s'arrête sûrement pas à 3 décimales, faites ceci

Resultat = round(valeur1,3)+ round(valeur2,3)

Cdlr

J'ai testé votre proposition mais cela n'a pas fonctionné. J'ai bien contrôlé, il y a bien que 3 décimales aux valeurs.

En revanche, j'ai contourné le problème en mettant après le calcul

Resultat = Round(Resultat,2)

Et a ce moment vba me renvoi vrai pour 0.69=0.69

Je vais procédé à d'autres tests pour essayer de comprendre.

Merci pour votre aide

bonsoir,

Vous devriez cocher cette option :

precision

A+

La case était bien décoché, en la cochant et en mettant le code Resultat = Round(Resultat,2) en commentaire , il me renvoi toujours faux pour 0.69=0.69

Je suis perplexe, mais effectivement il y a une histoire de décimale. genre 0.690 <> 0.69 ...

Dans tout les cas, en arrondissant mes résultats, je devrais corriger ce "bug". Il me reste plus qu'a reprendre mes lignes de code......

Merci

Bonjour,

il ne s'agit pas d'un bug, mais du fait qu'un nombre 'rond' en décimal ne l'est plus forcément dans sa représentation binaire.

eric

Rechercher des sujets similaires à "incomprehensible erreur addition vba"