Before/AfterUpdate
Bonjour à tous,
Je suis en train d'ajouter des contrôles sur des TextBox et j'ai un soucis. Voici un extrait des codes que j'ai tapé:
Private Sub NuméroCommande_AfterUpdate()
If Not Left(NuméroDevis.Text, 1) = Chr(65) And Not Left(NuméroDevis, 2) = Chr(82) Then
MsgBox "Le numéro d'AR doit obligatoirement commencer par les lettres AR.", vbExclamation, "Erreur - 0"
NuméroCommande = ""
NuméroCommande.SetFocus
Else
'.......................fin du SubLe truc c'est que j'aimerai que le curseur revienne dans la TextBox NuméroDevis au lieu d'aller à la prochaine. J'ai lu qu'en passant par BeforeUpdate ca le ferait tout seul mais j'avais pour que l'instant la fonction me dépasse un peu.
Merci.
J'ai essayé comme cela:
Private Sub NuméroCommande_BeforeUpdate(ByVal Cancel As MSForms.ReturnBoolean)
If Not Left(NuméroDevis.Text, 1) = Chr(65) And Not Left(NuméroDevis, 2) = Chr(82) Then
MsgBox "Le numéro d'AR doit obligatoirement commencer par les lettres AR.", vbExclamation, "Erreur - 0"
Cancel = True
NuméroCommande = ""
Else
'...................................Fin de SubAlors ça ne fonctionne pas et en plus je ne peux plus cliquer sur le bouton annuler de mon Userform sans faire un Echap avant.
Bonjour Bruno,
Je viens de refaire mon code suite à ta réponse d'hier sur un autre sujet et ça fonctionne. Je pense doc avoir "compris" le fonctionnement du BeforeUpdate, même si je galère encore un peu sur les grosses fonctionne pour insérer le Cancel. En tout cas encore merci pour ton aide, je progresse énormément avec le forum
Voici le code:
Private Sub ComboboxNuméroDevis_BeforeUpdate(ByVal Cancel As MSForms.ReturnBoolean)
If Liste_DT.Cells(Ligne, "L") <> "" Then
MsgBox "L'offre " & ComboBoxNuméroDevis & " possède déjà un AR : " & Liste_DT.Cells(Ligne, "L") & ".", vbExclamation, "Erreur - 1"
ComboBoxNuméroDevis = ""
Cancel = True
End If
End Sub