Somme erronée en VBA
Résolu/Fermé
Iama
Messages postés
319
Date d'inscription
mercredi 13 janvier 2010
Statut
Membre
Dernière intervention
27 mars 2020
-
14 août 2015 à 11:56
Iama Messages postés 319 Date d'inscription mercredi 13 janvier 2010 Statut Membre Dernière intervention 27 mars 2020 - 15 août 2015 à 09:05
Iama Messages postés 319 Date d'inscription mercredi 13 janvier 2010 Statut Membre Dernière intervention 27 mars 2020 - 15 août 2015 à 09:05
A voir également:
- Somme erronée en VBA
- Formule somme excel colonne - Guide
- Somme si couleur - Guide
- Somme si date comprise entre ✓ - Forum Excel
- Find vba - Astuces et Solutions
- Vba ouvrir un fichier excel avec chemin ✓ - Forum VB / VBA
3 réponses
Patrice33740
Messages postés
8556
Date d'inscription
dimanche 13 juin 2010
Statut
Membre
Dernière intervention
2 mars 2023
1 778
Modifié par Patrice33740 le 14/08/2015 à 13:38
Modifié par Patrice33740 le 14/08/2015 à 13:38
Bonjour,
C'est probablement un problème d'arrondi lors de la conversion décimal - binaire mais sans le code difficile d'être précis.
Ce code ne pose pas de problème :
Cordialement
Patrice
C'est probablement un problème d'arrondi lors de la conversion décimal - binaire mais sans le code difficile d'être précis.
Ce code ne pose pas de problème :
Sub test() Const d1 As Double = 116.33 Const d2 As Double = -21.15 Const s1 As String = "116.33" Const s2 As String = "-21.15" MsgBox (d1 + d2) & vbCr & _ (Val(s1) + Val(s2)) End Sub
Cordialement
Patrice
NHenry
Messages postés
15162
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
24 octobre 2024
340
Modifié par NHenry le 14/08/2015 à 13:45
Modifié par NHenry le 14/08/2015 à 13:45
Autant, on peut dire un entier peut être égal à une valeur, autant, dire que 2 flottant peuvent être égaux est faux.
Tu peux dire par contre que si ta somme et entre 0.001 et -0.001 tu considère que c'est bon.
J'interviens principalement en VB6 et VB.NET, avec un peu de C#, mais la modération m'amène souvent sur d'autre langages.
En VB.NET pensez à activer "Option Explicit" et "Option Strict"
Tu peux dire par contre que si ta somme et entre 0.001 et -0.001 tu considère que c'est bon.
J'interviens principalement en VB6 et VB.NET, avec un peu de C#, mais la modération m'amène souvent sur d'autre langages.
En VB.NET pensez à activer "Option Explicit" et "Option Strict"
Iama
Messages postés
319
Date d'inscription
mercredi 13 janvier 2010
Statut
Membre
Dernière intervention
27 mars 2020
14
14 août 2015 à 14:14
14 août 2015 à 14:14
Merci à vous deux
Apparemment il n'y a pas de solutions simples. La précision informatique!
Je suis passé par des nombres entiers.
Pour ce problème,
j'ai multiplié par 100 toutes mes valeurs et cela tombe juste.
Cordialement
Alain
Apparemment il n'y a pas de solutions simples. La précision informatique!
Je suis passé par des nombres entiers.
Pour ce problème,
j'ai multiplié par 100 toutes mes valeurs et cela tombe juste.
Cordialement
Alain
NHenry
Messages postés
15162
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
24 octobre 2024
340
14 août 2015 à 14:56
14 août 2015 à 14:56
Si ton problème es résolu, penses à maquer le sujet comme tel.
Iama
Messages postés
319
Date d'inscription
mercredi 13 janvier 2010
Statut
Membre
Dernière intervention
27 mars 2020
14
15 août 2015 à 09:05
15 août 2015 à 09:05
Un oublie Excuse
Alain
Alain