Ecart décimal entre VBA et Excel

Fermé
Mathieulai - 17 sept. 2015 à 13:33
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 - 17 sept. 2015 à 14:40
Bonjour, j'ai un écart entre le résultat retourné par une formule Excel d'un côté et la même en VBA de l'autre. Je ne sais pas d'où cela vient et n'arrive pas à le résorber.

Voici le fichier : http://dl.free.fr/gEn4FKCOG

Voici le code VBA (résumé à la partie en cause) :

Function Prod(Remise As Single, Rs As Single) As Single
Prod = Remise * (1 - Rs)
End Function

Remise = 0,15
Rs = 0,10

VBA => Prod = 0,135000005364418
Excel => 0,135

Et dans la suite du code j'arrondis tout ça donc j'ai des écarts.

Merci pour votre aide.
A voir également:

1 réponse

michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 310
17 sept. 2015 à 14:08
bonjour
le type single pose souvent des pb lorsqu'on le rentre des calculs

si tu passes en double tu obtiens bien la m^ chose qu'en XL

Function Prod(Remise As Double, Rs As Double) As Double
--
Michel
0
Merci Michel, par contre le type de variable Double (8 bytes) pèse le double (par définition) que Single (4 bytes) et des variables j'en ai beaucoup dans mon code. Mais si je n'ai pas le choix.
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 310 > Mathieulai
17 sept. 2015 à 14:40
lorsque la fonction est terminée, le type des variables est annulé
0