Bug très très étrange sous Excel VBA

Bug très très étrange sous Excel VBA - VB/VBA/VBS - Programmation

Marsh Posté le 24-09-2010 à 20:06:55    

Bonjour,
 
Je viens de découvrir un bug très très étrange dans VBA utilisé avec Excel.
C'est très étrange et je ne vois vraiment pas où le souci tellement c'est simple:
 
Voilà le minuscule code qui "foire":
Sub Macro1()
If Cells(1,1).value=0.3 Then
Msgbox "OK"
End If
End Sub
 
NB: Vous pouvez mettre ce que vous voulez dans la boucle.
 
Vous allez me dire que la boucle va afficher "OK" uniquement si la cellule A1 contient la valeur 0.3
C'est vrai...
... mais si je remplace A1 par la formule "=0.2+0.1" alors la boucle n'affiche RIEN!
 
Et là où on entre la 5ème dimension: en mettant la formule "=0.15+0.15": ça marche!
et si on change par "If Cells(1,1).value=0.4 Then" en utilisant la formule "=0.3+0.1": ça marche aussi!
 
Mais alors d'où vient le problème du 0.2+0.1????
 
Franchement, je suis perdue... Vous pouvez essayer par vous même si vous ne me croyez pas.
J'utilise personnellement la version 2007 d'Excel. Est-ce un bug isolé ou y en a plein des comme ça?


---------------
Toute l'actualité joyeuse du Web sur http://joyeux-web.blogspot.com
Reply

Marsh Posté le 24-09-2010 à 20:06:55   

Reply

Marsh Posté le 24-09-2010 à 21:43:52    

Bonjour,
Il faut cocher Calcul avec la précision au format affiché.
Je ne sais pas trop ou ça se trouve avec 2007, mais une petite recherche dans l'aide d'Excel sur ces mots clefs te renseignera tout de suite.
A+

Reply

Marsh Posté le 24-09-2010 à 21:52:40    

OK merci beaucoup! ça marche maintenant!


---------------
Toute l'actualité joyeuse du Web sur http://joyeux-web.blogspot.com
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed