VBA : Finir la saisie d'une tbox avant que Tbox_change s'active
Résolu
lanetmel
Messages postés
200
Date d'inscription
Statut
Membre
Dernière intervention
-
lanetmel Messages postés 200 Date d'inscription Statut Membre Dernière intervention -
lanetmel Messages postés 200 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
J'espère que vous allez bien!
Petite question : J'ai une macro sur un tbox_change mais quand j'entre la donnée dans la tbox, il ne me laisse pas terminer ma saisie qu'il lance la macro..
ça doit être un truc de débutant mais je ne vois pas.. Quelqu'un à une idée?
Sub checkbox_Tàfacturer_change()
If CheckBox_Tàfacturer.Value = True And CheckBox1.Value = True Then
TBox_Tàfacturer.Visible = True
If Tbox_Tinclus = "" Then
Tbox_Tinclus.Value = 0
End If
TBox_Tàfacturer.Value = ((Tbox_Tcouttotal.Value) - (Tbox_Tinclus.Value))
End If
If CheckBox_Tàfacturer.Value = True And CheckBox2.Value = True Then
TBox_Tàfacturermpmp.Visible = True
If Tbox_Tinclusmpmp = "" Then
Tbox_Tinclusmpmp.Value = 0
TBox_Tàfacturermpmp.Value = Tbox_Tcoutmpmp.Value - Tbox_Tinclusmpmp.Value
End If
If Tbox_Tcouttotal.Value - Tbox_Tinclus.Value - TBox_Tàfacturer.Value > 0 Then
MsgBox " BALANCE DE " & Tbox_Tcouttotal.Value - Tbox_Tinclus.Value - TBox_Tàfacturer.Value & " " & "$" & " " & "À FACTURER"
End If
End If
End Sub
Exemple : je veux écrire 450.00 dans ma tbox..quand je commence à taper à 45 la msgbox apparait.. je dois faire ok et finir ma saisie..
merci à l'avance de votre précieuse aide
Mélanie
J'espère que vous allez bien!
Petite question : J'ai une macro sur un tbox_change mais quand j'entre la donnée dans la tbox, il ne me laisse pas terminer ma saisie qu'il lance la macro..
ça doit être un truc de débutant mais je ne vois pas.. Quelqu'un à une idée?
Sub checkbox_Tàfacturer_change()
If CheckBox_Tàfacturer.Value = True And CheckBox1.Value = True Then
TBox_Tàfacturer.Visible = True
If Tbox_Tinclus = "" Then
Tbox_Tinclus.Value = 0
End If
TBox_Tàfacturer.Value = ((Tbox_Tcouttotal.Value) - (Tbox_Tinclus.Value))
End If
If CheckBox_Tàfacturer.Value = True And CheckBox2.Value = True Then
TBox_Tàfacturermpmp.Visible = True
If Tbox_Tinclusmpmp = "" Then
Tbox_Tinclusmpmp.Value = 0
TBox_Tàfacturermpmp.Value = Tbox_Tcoutmpmp.Value - Tbox_Tinclusmpmp.Value
End If
If Tbox_Tcouttotal.Value - Tbox_Tinclus.Value - TBox_Tàfacturer.Value > 0 Then
MsgBox " BALANCE DE " & Tbox_Tcouttotal.Value - Tbox_Tinclus.Value - TBox_Tàfacturer.Value & " " & "$" & " " & "À FACTURER"
End If
End If
End Sub
Exemple : je veux écrire 450.00 dans ma tbox..quand je commence à taper à 45 la msgbox apparait.. je dois faire ok et finir ma saisie..
merci à l'avance de votre précieuse aide
Mélanie
A voir également:
- VBA : Finir la saisie d'une tbox avant que Tbox_change s'active
- Excel compter cellule couleur sans vba - Guide
- Incompatibilité de type vba ✓ - Forum VB / VBA
- Erreur 13 incompatibilité de type VBA excel ✓ - Forum Excel
- Mkdir vba ✓ - Forum VB / VBA
- Dépassement de capacité vba ✓ - Forum Excel
4 réponses
Bonjour,
Si VBA excel : Sub Tbox_Tcouttotal_LostFocus() n'existe pas
saisie a valider par enter:
Private Sub Tbox_Tcouttota_BeforeUpdate(ByVal Cancel As MSForms.ReturnBoolean)
End Sub
a voir
Si VBA excel : Sub Tbox_Tcouttotal_LostFocus() n'existe pas
saisie a valider par enter:
Private Sub Tbox_Tcouttota_BeforeUpdate(ByVal Cancel As MSForms.ReturnBoolean)
End Sub
a voir
Bonjour Mélanie,
Et si tu adaptais ta macro pour qu'elle se lance sur TextBox_LostFocus() au lieu de TextBox_Change() ?
Si tu as besoin que la macro ne s'exécute que lorsque le contenu de la textbox a été modifié, tu peux ajouter un test au début du TextBox_LostFocus().
Exemple :
Bonne journée !
Et si tu adaptais ta macro pour qu'elle se lance sur TextBox_LostFocus() au lieu de TextBox_Change() ?
Si tu as besoin que la macro ne s'exécute que lorsque le contenu de la textbox a été modifié, tu peux ajouter un test au début du TextBox_LostFocus().
Exemple :
Dim change As Boolean Private Sub TextBox1_Change() change = True 'Tu notes dans une variable que le contenu a changé End Sub Private Sub TextBox1_LostFocus() If change Then MsgBox TextBox1.Value 'Mets ici ta macro change = False 'Tu remets la variable à FAUX End If End Sub
Bonne journée !
Bonjour Grincheux
Je te remercie pour ta réponse bien gentil à toi de vouloir m'aider j'apprécie beaucoup.
ça ne fonctionne pas.. peut-être aie-je mal fais quelque chose..
J,ai mis dans option explicit
Dim change As Boolean
Ensuite j'ai mis la macro suivante :
Sub Tbox_Tcouttotal_change()
change = True
End Sub
Sub Tbox_Tcouttotal_LostFocus()
If change Then
Tbox_Tcoutmpmp.Visible = True
Label5.Visible = True
Tbox_Tcoutmpmp.Value = CDbl(Tbox_Tcouttotal.Value) * totalpmpbabv / 1000
change = False
End If
End Sub
as-tu une idée de ce que j'ai fait de mal?
il ne semble pas voir le lostFocus ..dans le pas à pas.. il arrête avant cette macro
merci encore
Mélanie
Je te remercie pour ta réponse bien gentil à toi de vouloir m'aider j'apprécie beaucoup.
ça ne fonctionne pas.. peut-être aie-je mal fais quelque chose..
J,ai mis dans option explicit
Dim change As Boolean
Ensuite j'ai mis la macro suivante :
Sub Tbox_Tcouttotal_change()
change = True
End Sub
Sub Tbox_Tcouttotal_LostFocus()
If change Then
Tbox_Tcoutmpmp.Visible = True
Label5.Visible = True
Tbox_Tcoutmpmp.Value = CDbl(Tbox_Tcouttotal.Value) * totalpmpbabv / 1000
change = False
End If
End Sub
as-tu une idée de ce que j'ai fait de mal?
il ne semble pas voir le lostFocus ..dans le pas à pas.. il arrête avant cette macro
merci encore
Mélanie