Menu

Résultat de soustraction de 2 textbox dans un label [Résolu/Fermé]

Messages postés
5
Date d'inscription
mardi 1 décembre 2015
Statut
Membre
Dernière intervention
2 décembre 2015
- - Dernière réponse : 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
Afficher la suite 

1 réponse

Meilleure réponse
Messages postés
14619
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
22 juillet 2019
1158
1
Merci
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

Dire « Merci » 1

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 55044 internautes nous ont dit merci ce mois-ci

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
14619
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
22 juillet 2019
-
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€"
f894009
Messages postés
14619
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
22 juillet 2019
1158 > daysiiie
Messages postés
5
Date d'inscription
mardi 1 décembre 2015
Statut
Membre
Dernière intervention
2 décembre 2015
-
Re,

Relisez ce que j'ai ecrit a propos du separateur de decimale f894009 1 déc. 2015 à 13:24
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
14619
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
22 juillet 2019
-
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!
:(
f894009
Messages postés
14619
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
22 juillet 2019
1158 > daysiiie
Messages postés
5
Date d'inscription
mardi 1 décembre 2015
Statut
Membre
Dernière intervention
2 décembre 2015
-
Bonjour,

Vous pourriez mettre votre fichier a dispo sans donnees sensible

Pour transmettre un fichier,
il faut passer par un site de pièce jointe tel que cjoint.com

Allez sur ce site : http://cjoint.com
Clic sur parcourir,
Cherche ton fichier,
clic sur ouvrir,
Clic sur "Créer le lien cjoint",
Copier le lien,
Revenir ici le coller dans une réponse...
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
14619
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
22 juillet 2019
-
Héllo!

merci, ça y est ça marche! l'erreur était au niveau des séparateurs effectivement (faute d'inattention...)
Merci énormément pour votre aide!!!!
:)