Z
zoroastre
Guest
Bonjour à tous.
Dans une feuille j'ai créé un userforme pour y encoder des temps (course).
Les différents blocs de texte (heures, minutes, secondes) sont contrôlés avant d'accéder au suivant.
J'aurai aimé que, quand ce test est mauvais, on reste dans le bloc avec le focus, le curseur et le contenu en surbrillance.
J'ai trouvé sur ce forum les données pour le code qui suit
Qu'ai je bien oublié ou cela n'est-il pas possible ?
Merci de votre aide et de vos conseils
Dans une feuille j'ai créé un userforme pour y encoder des temps (course).
Les différents blocs de texte (heures, minutes, secondes) sont contrôlés avant d'accéder au suivant.
J'aurai aimé que, quand ce test est mauvais, on reste dans le bloc avec le focus, le curseur et le contenu en surbrillance.
J'ai trouvé sur ce forum les données pour le code qui suit
Private Sub h_Exit(ByVal Cancel As MSForms.ReturnBoolean)
Le focus est bien ou je l'espérait (msgbox(ME.ActiveControl.name)) mais pas le curseur ni une surbrillance quelconque. je suis obligé de cliquer sur la box pour corriger alors que j'espérais pouvoir simplement écraser la mauvaise valeur If (Not IsNumeric(h) Or h < 0 Or h > 5) Then
End Sub MsgBox ("Erreur....")
Cancel = True
With Me.Controls("h")
End IfCancel = True
With Me.Controls("h")
.SelStart = 0
.SelLength = Len(Me.Controls("h").value)
.SetFocus
End With.SelLength = Len(Me.Controls("h").value)
.SetFocus
Qu'ai je bien oublié ou cela n'est-il pas possible ?
Merci de votre aide et de vos conseils