Résultat de soustraction de 2 textbox dans un label

Résolu/Fermé
daysiiie Messages postés 5 Date d'inscription mardi 1 décembre 2015 Statut Membre Dernière intervention 2 décembre 2015 - 1 déc. 2015 à 12:21
daysiiie Messages postés 5 Date d'inscription mardi 1 décembre 2015 Statut Membre Dernière intervention 2 décembre 2015 - 2 déc. 2015 à 17:08
Bonjour, j'au un UserForm avec des textbox et des labels.
j'ai 2 textbox "Solde" et "Montant_a_regler"
et un Label "Nouveau_solde" dans lequel je voudrais avoir le résultat de l'opération suivante s'affiche:

"Solde" - "Montant_a_regler"

j'ai essayé plusieurs codes glanés ici et là mais pour tous, j'ai toujours le même message d'erreur d'exécution 13 qui s'affiche.

Pouvez-vous m'aider s'il vous plait?
Merci d'avance.





'premier code essayé:

Private Sub calcul_nveau_solde_Click()

Me.Nouveau_solde = CDbl(Me.Solde) + CDbl(Me.Montant_a_regler)

end sub


'second code essayé

Private Sub calcul_nveau_solde_Click()
Dim dtotal As Double
dtotal = 0
If Solde.Text <> "" Then
dtotal = dtotal + CDbl(Solde.Text)
End If
If Montant_a_regler.Text <> "" Then
dtotal = dtotal + CDbl(Montant_a_regler.Text)
End If

Nouveau_solde.Caption = Format(dtotal, "0.00€")

end if


'troisième code essayé

Private Sub calcul_nveau_solde_Click()

Nouveau_solde.Visible = True
Nouveau_solde.Caption = CStr(CDbl(Solde.Text) - CDbl(Montant_a_regler.Text))

end if
A voir également:

1 réponse

f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 1 701
1 déc. 2015 à 13:24
Bonjour,

Votre soucis est lie a votre separateur de decimale, ci-dessous code a ajouter pour saisie numerique textbox avec separateur ",", que vous remplacerez par un point si c'est le cas dans votre excel:

Private Sub Solde_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
    If InStr("1234567890,-", Chr(KeyAscii)) = 0 Then KeyAscii = 0
End Sub

Private Sub Montant_a_regler_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
    If InStr("1234567890,-", Chr(KeyAscii)) = 0 Then KeyAscii = 0
End Sub


'Code pour calcul, ous mettrez + ou - car dans vos codes exemples un + et un -, donc ......
Private Sub calcul_nveau_solde_Click()
    Dim dtotal As Double
    
    If Solde <> "" And Montant_a_regler <> "" Then
        dtotal = CDbl(Solde) + CDbl(Montant_a_regler)
    End If
    Nouveau_solde.Caption = Format(dtotal, "0.00€")
End If

1
daysiiie Messages postés 5 Date d'inscription mardi 1 décembre 2015 Statut Membre Dernière intervention 2 décembre 2015
1 déc. 2015 à 14:37
Merci énormément pour votre réponse.
Cependant, j'ai toujours ce message d'erreur d'exécution! je ne sais pas trop d'où cela vient!
0
f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 1 701 > daysiiie Messages postés 5 Date d'inscription mardi 1 décembre 2015 Statut Membre Dernière intervention 2 décembre 2015
1 déc. 2015 à 16:03
Re,

A quelle ligne l'erreur ??
Les nombres decimaux que vous entrez sont avec un point ou une virgule ???
0
daysiiie Messages postés 5 Date d'inscription mardi 1 décembre 2015 Statut Membre Dernière intervention 2 décembre 2015 > f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024
1 déc. 2015 à 16:52
L'erreur se trouve sur cette ligne



dtotal = CDbl(Solde) - CDbl(Montant_a_regler)


et je n'arrive pas à entrer les nombres décimaux avec des points; seuls les virgules passent (les points sont bloqués)

en fait mon userform contient une listbox. en cliquant sur une donnée de cette liste box, les informations apparaissent dans les textbox (dont Solde) et il n'y a que le Textbox Montant_a_regler que je peux modifier.

la valeur donnée dans le Texbox Solde est du style "1080,00€"
0
f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 1 701 > daysiiie Messages postés 5 Date d'inscription mardi 1 décembre 2015 Statut Membre Dernière intervention 2 décembre 2015
1 déc. 2015 à 17:00
Re,

Relisez ce que j'ai ecrit a propos du separateur de decimale f894009 1 déc. 2015 à 13:24
0
daysiiie Messages postés 5 Date d'inscription mardi 1 décembre 2015 Statut Membre Dernière intervention 2 décembre 2015 > f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024
2 déc. 2015 à 15:30
Re-bonjour,
j'ai relu ce que vous avez écrit à propos du séparateur, et j'ai changé le "," par "." mais ça ne marche toujours pas je ne comprends pas!
:(
0