[Excel VBA] Erreurs d'arrondis
Résolu
Kvo
Messages postés
27
Statut
Membre
-
pachi -
pachi -
Bonjour,
J'ai un petit souci avec une macro VBA sous Excel qui me sert à arrondir une liste de valeurs au quatrième chiffre après la virgule.
La formule "round" d'Excel arrondit normalement selon les conventions à savoir :
- au chiffre supérieur de 0.50 à 0.99
- au chiffre inférieur de 0.01 à 0.49
Je dis bien "normalement" car j'obtiens des erreurs...
Prenons par exemple le chiffre 45.70625.
Arrondi dans le tableur avec la fonction =round(cellule,4), j'obtiens 45.7063 --> JUSTE
Arrondi avec une macro sous VBA avec la même fonction j'obtiens 45.7062 --> FAUX
Ce n'est pas bien grave dans l'absolu mais j'utilise ce code à des fins comptables et j'ai donc besoin d'exactitude.
Pourriez-vous m'aider svp?
D'avance merci!
J'ai un petit souci avec une macro VBA sous Excel qui me sert à arrondir une liste de valeurs au quatrième chiffre après la virgule.
La formule "round" d'Excel arrondit normalement selon les conventions à savoir :
- au chiffre supérieur de 0.50 à 0.99
- au chiffre inférieur de 0.01 à 0.49
Je dis bien "normalement" car j'obtiens des erreurs...
Prenons par exemple le chiffre 45.70625.
Arrondi dans le tableur avec la fonction =round(cellule,4), j'obtiens 45.7063 --> JUSTE
Arrondi avec une macro sous VBA avec la même fonction j'obtiens 45.7062 --> FAUX
Ce n'est pas bien grave dans l'absolu mais j'utilise ce code à des fins comptables et j'ai donc besoin d'exactitude.
Pourriez-vous m'aider svp?
D'avance merci!
2 réponses
L'utilisation de la fonction « formatnumber » à la place de « round » corrige effectivement ce problème, merci!
Je suis tout de même curieux de savoir pourquoi Excel se trompe avec la fonction round, d'autant qu'en présence d'un 5 en 5ème décimale il arrondira tantôt par excès (juste) tantôt par défaut (faux) :/
Tu m’enlèves en tout cas ici une belle épine du pied, encore merci.
Je suis tout de même curieux de savoir pourquoi Excel se trompe avec la fonction round, d'autant qu'en présence d'un 5 en 5ème décimale il arrondira tantôt par excès (juste) tantôt par défaut (faux) :/
Tu m’enlèves en tout cas ici une belle épine du pied, encore merci.