Division dans VBA réduit le nombre de décimales

Fermé
robininio Messages postés 2 Date d'inscription vendredi 17 août 2018 Statut Membre Dernière intervention 20 août 2018 - 17 août 2018 à 15:19
robininio Messages postés 2 Date d'inscription vendredi 17 août 2018 Statut Membre Dernière intervention 20 août 2018 - 20 août 2018 à 09:19
Bonjour,

J'ai mis un code en place pour faire une division de deux montants dans VBA.

Le problème est que VBA limite le nombre de décimales.

Comment puis-je garder le nombre de décimales illimitées ?

mon code est le suivant:

Dim devise2 as double
devise2= -range( "R"&i).value / range("T"&i)
range("U"&i).value = devise2

le résultat est limité à 3 décimales alors que le résultat original a au moins 16 décimales.

Merci,

Robin,

3 réponses

michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 303
Modifié le 18 août 2018 à 09:08
Bonjour

en déclarant ta variable en double
d'après l'aide Excel

Double, type de données
Type de données stockant sur 64 bits les nombres à virgule flottante en double précision compris entre -1,79769313486231E308 et -4,94065645841247E-324 pour les valeurs négatives, et entre 4,94065645841247E-324 et 1,79769313486232E308 pour les valeurs positives. Dans Visual Basic, le signe dièse (#) est le caractère de déclaration du type Double.


tu as donc jusqu'à 13 décimales maxi d'affiché

Option Explicit
'-----------------
Sub decimales()
Dim devise As Double
devise = Range("A2") / Range("B2")
MsgBox devise ' pour essai
Range("C2") = devise
End Sub


et dans C2
il faut mettre au format-nombre décimale à 13

1
robininio Messages postés 2 Date d'inscription vendredi 17 août 2018 Statut Membre Dernière intervention 20 août 2018
20 août 2018 à 09:19
Bonjour,

merci pour vos réponses.

Le problème vient de la conversion en CSV.

Les décimales sont presente dans l'excel mais quand je le save au format csv, ca m’enlève des décimales.

Avez vous déjà eu ce problème ?

Merci de votre aide,

Robin,
0
yclik Messages postés 3595 Date d'inscription vendredi 25 juillet 2014 Statut Membre Dernière intervention 26 avril 2024 1 481
Modifié le 17 août 2018 à 19:53
Bonsoir
Peut être en déclarant la variable en "Integer" ou "Long"

voir là
-2
eriiic Messages postés 24570 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 23 avril 2024 7 214
18 août 2018 à 16:20
Bonjour,

répond pas au hasard stp ;-)
Il veut des décimales et tu proposes des entiers. Difficile d'être plus à coté de la plaque...
eric
0