Je viens vers vous pour un petit problème. J'avoue que je suis un peu perdu.
Je voudrai vider une textbox si aucuns boutons coché avec un message avertissant l'utilisateur.
J'arrive à le faire mais le message s'affiche à 2 reprises.
J'ai pensé à une variable booléenne mais j'avoue que je n'ai pas trouvé l'astuce pour l'utiliser.
VB:
Option Explicit
Private Sub TextBox1_Change()
If Opt_Ajouter.Value = False And Opt_Corriger.Value = False And Opt_Supprimer.Value = False Then
TextBox1 = "": TextBox1.SetFocus
MsgBox "Choisir une Option"
End If
End Sub
Private Sub TextBox1_Change()
Static flag As Boolean
If flag Then Exit Sub
If Not (Opt_Ajouter Or Opt_Corriger Or Opt_Supprimer) Then
flag = True: TextBox1 = "": flag = False: TextBox1.SetFocus
MsgBox "Choisir une Option"
End If
End Sub
Private Sub TextBox1_Change()
Static flag As Boolean
If flag Then Exit Sub
If Not (Opt_Ajouter Or Opt_Corriger Or Opt_Supprimer) Then
flag = True: TextBox1 = "": flag = False: TextBox1.SetFocus
MsgBox "Choisir une Option"
End If
End Sub
Bonjour tous,
Une autre solution en utilisant le KeyUp et non le Change
Bruno
VB:
Private Sub TextBox1_KeyUp(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
If Opt_Ajouter.Value = False And Opt_Corriger.Value = False And Opt_Supprimer.Value = False Then
TextBox1 = "": TextBox1.SetFocus
MsgBox "Choisir une Option"
End If
End Sub
Private Sub TextBox1_Change()
Static flag As Boolean
If flag Then Exit Sub
If Not (Opt_Ajouter Or Opt_Corriger Or Opt_Supprimer) Then
flag = True: TextBox1 = "": flag = False: TextBox1.SetFocus
MsgBox "Choisir une Option"
End If
End Sub
C'est parfait. Merci beaucoup, tu me permets d'avancer.
Stp, une dernière question: Static signifie que la variable garde toujours le même état (vrai/faux)?
Encore merci.
Bonjour tous,
Une autre solution en utilisant le KeyUp et non le Change
Bruno
VB:
Private Sub TextBox1_KeyUp(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
If Opt_Ajouter.Value = False And Opt_Corriger.Value = False And Opt_Supprimer.Value = False Then
TextBox1 = "": TextBox1.SetFocus
MsgBox "Choisir une Option"
End If
End Sub