Problème de division

Tradman

XLDnaute Nouveau
Bonjour à tous,

J'ai un problème avec une division dans VBA que je ne sais comment résoudre. Voici le problème :

dim dblFexp as double
dblFexp = rgMetro_Offset(1,1).Value / rgMetro_Offset(1,2).Value

Les valeurs de rgMetro_Offset(1,1).Value = 2996 et rgMetro_Offset(1,2).Value = 2089

Donc dblFexp devrait prendre la valeur 1,4342. Par contre, j'obtiens le résultat sans décimale donc dblFexp = 1 !!!

Pouvez-vous m'aider !!!!!

Merci Beaucoup

Tradman
 

Tradman

XLDnaute Nouveau
Re : Problème de division

Curieusement, j'ai découvert que j'avais une erreur dans mes calculs. Qui une fois corrigé, ne me reproduit plus l'erreur !!!
Pourtant je n'ai qu'inversé le numérateur et le dénominateur de la fonction !!!!

Bref ça reste un grand mystère, je vais tout de même garder en tête la fonction formatnumber !!!!

Bonne journée
 

Staple1600

XLDnaute Barbatruc
Re : Problème de division

Bonjour à tous

Ainsi j'ai bien les décimales


Code VB:
Sub test()
'Les valeurs de rgMetro_Offset(1,1).Value = 2996 et rgMetro_Offset(1,2).Value = 2089
Dim dblFexp, rgMetro As Range
Set rgMetro = [A1]
rgMetro_Offset(1, 1) = 2996 'donc ici on est en B2
rgMetro_Offset(1, 2) = 2089 'et là en C2

dblFexp = rgMetro_Offset(1, 1).Value / rgMetro_Offset(1, 2).Value
MsgBox dblFexp
End Sub

Et pour avoir que les 4 décimales
(J'ai simplifié aussi l'écriture des Offset dans cette variante)
Code vb:
Sub testBis()
'Les valeurs de rgMetro_Offset(1,1).Value = 2996 et rgMetro_Offset(1,2).Value = 2089
Dim dblFexp, rgMetro As Range
Set rgMetro = [A1]: rgMetro(2, 2) = 2996: rgMetro(3, 3) = 2089
dblFexp = rgMetro(2, 2) / rgMetro(2, 3)
MsgBox Round(dblFexp, 4)
End Sub





 
Dernière édition:

Discussions similaires