Comment ne pas arrondir un chiffre dans VBA

Résolu/Fermé
hydracom Messages postés 29 Date d'inscription jeudi 24 avril 2008 Statut Membre Dernière intervention 15 juin 2010 - 19 févr. 2009 à 13:59
hydracom Messages postés 29 Date d'inscription jeudi 24 avril 2008 Statut Membre Dernière intervention 15 juin 2010 - 19 févr. 2009 à 16:35
Bonjour,

J'ai encore un petit soucis concernant la programmation VBA sous EXCel

en fait j'ai la colonne A avec des valeurs dans EXCEL, varient entre 0.40 et 100, par exemple : 0.42, 0.48, 0.61, 1.2

Je donne ces valeurs aux case d'une matrice correspondant intitulé matrice(1 to 100) par exemple

j'ai écris donc:

matrice(1) = range("A1").value
...
matrice(i) = range("A"& i &"").Value


Le problème c'est qu'il arrondi automatiquement mes chiffres, et lorsque je dois faire un calcul :

(matrice(10) - matrice(9)) / (matrice(2) - matrice(1))

il affiche erreur car le programme a arrondi mes valeurs tels que matrice(2) = 0 au lieu de 0.48 et matrice(1) = 0 aussi au lieu de 0.42.

le calcul devient une division par Zéro, donc erreur.

j'ai bien une impression que c'est une déclaration de variable mais je ne sais pas comment faire.


Merci pour votre réponse

4 réponses

Bidouilleu_R Messages postés 1181 Date d'inscription mardi 27 mai 2008 Statut Membre Dernière intervention 12 juillet 2012 288
19 févr. 2009 à 15:48
on aurait pu utiliser aussi double
et ça marche aussi.
Dim Mamatrice(10) As double
1
Bidouilleu_R Messages postés 1181 Date d'inscription mardi 27 mai 2008 Statut Membre Dernière intervention 12 juillet 2012 288
19 févr. 2009 à 14:26
Bonjour,
je te conseille de faire comme ça!

j'ai mis des valeur de A1 à A10

Sub essai()
Dim Mamatrice(10) As Currency ' 10 signifie 11 enregistrement
Dim valeur As Variant
Dim X as double

For i = 0 To 9
Mamatrice(i) = Range("A1").Offset(i, 0).Value
Next
'cequi suit c'est pour voir ce qu'il y a dedans
For i = 0 To 9

valeur = valeur & Chr(10) & Mamatrice(i)

Next



MsgBox valeur

X = Mamatrice(9) / Mamatrice(8)
msgbox X

End Sub


A+
0
hydracom Messages postés 29 Date d'inscription jeudi 24 avril 2008 Statut Membre Dernière intervention 15 juin 2010
19 févr. 2009 à 15:41
J'ai essayé de déclarer avec Currency et ça a marché.

Merci bcp :-) cé très gentil
0
hydracom Messages postés 29 Date d'inscription jeudi 24 avril 2008 Statut Membre Dernière intervention 15 juin 2010
19 févr. 2009 à 16:35
@_@ ça marche aussi pkoi jé pas pensé à ça @@

Merci bcp bcp
0