Problème de soustraction USERFORM VBA Excel

J’utilise le code suivant pour la soustraction des deux textboxs 8 et 6.

Mais quand je fais un calcul d’un nombre réel avec virgule, automatiquement la virgule disparaitre. Et ne la prend pas en considération dans le calcul.

Par exemple

Si on a TextBox 8 = 302,202

Et TextBox6 = 10,10

Le calcul se fait sur la base de 302202 – 10.1 = 302191.9

Et la cellule du textbox 8 se transforme en 302191.9 ce qui me fausse le calcul

Ci-dessous le code

If (Val(TextBox8.Value) - Val(TextBox6.Value)  >= 0 Then
  TextBox8.Value = Val(TextBox8.Value) - Val(TextBox6.Value)
  Me.CommandButton3.Enabled = True
  Else
  MsgBox "Calcul négatif"
  End If

End Sub

Merci pour votre aide et collaboration

Bonjour essadqi,

En VBA, le séparateur décimal est le point et non la virgule.

Vous pouvez utiliser: CDBL(TextBox) ou bien Val(Replace(TextBox,",","."))

malheureusement, je n'ai pas réussi à résoudre le problème

en attaché le fichier. si vous pouvez le tester

18form-de-saisie.xlsm (36.89 Ko)

merci beaucoup

Re,

Essayez:

Private Sub CommandButton5_Click()
'commande calculer
Dim x6#, x7#, x8#
   x6 = Val(Replace(TextBox6, ",", "."))
   x7 = Val(Replace(TextBox7, ",", "."))
   x8 = Val(Replace(TextBox8, ",", "."))
   If (x8 - x6 + x7) >= 0 Then
      TextBox8.Value = x8 - x6 + x7
      Me.CommandButton3.Enabled = True
   Else
      MsgBox "Calcul négatif"
   End If
End Sub

Merci beaucoup

Rechercher des sujets similaires à "probleme soustraction userform vba"