Obliger l'utilisateur à remplir tout les champs du userform

Bonjour,

Je souhaite mettre en place un fichier assez simple, qui permet aux opérateurs de rentrer un nombre de rebus lorsqu'une panne survient sur nos installations.

J'ai donc créer un userform avec les champs Date, Nombre de rebus, Raisons des Rebus et N°OT (c'est un document qui nous permets de comprendre la panne).

Ainsi l'opérateur remplit ces champs et valide. Jusque la tout fonctionne très bien, aucun soucis. Maintenant j'aimerai imposer une condition : Si le champs N°OT n'est pas rempli alors l'utilisateur ne peut pas valider.

Lorsqu'il voudra valider une MsgBox s'ouvrira pour lui indiquer que le N°OT n'a pas été renseigné et donc la validation est rendue impossible.

Pourriez-vous m'indiquez comment puis-je mettre en place cette condition ?

En espérant avoir été claire dans mes explications...

Merci à vous!

Bonjour Bluebird,

Suggestion : sur l'événement click du bouton Valider, tester la longueur du champ pour voir si la textbox N°OT est renseignée :

Dim Réponse as integer

If Len(Me.TB_No_OT.Value)=0 Then

Réponse=Msgbox("Veuillez renseigner le N° OT", vbokonly,"Contrôle de saisie")

Me.TB_No_OT.Setfocus

Exit sub

End if

Mettre la même chose sur l'événement AfterUpdate de la TextBox TB_No_OT, qui s'exécute après sa mise à jour

Espérant avoir aidé, A+ Daniel

Bonjour et bienvenue sur le forum,

Alors disons que les noms sont Valider pour le bouton Valider et OT pour le champ N° OT, voici comment cela peut être fait :

Private Sub Valider_Click()
If OT <> "" Then
'Mettre le code qui va bien
Else
MsgBox "Validation impossible !" & Chr(10) & "Merci d'entrer un numéro d'OT.", vbOkOnly,"Contrôle de saisie"
End If
End Sub

A tester.

Sha'

Merci pour vos réponses!

Sharney j'ai utilisé ce que vous m'avez marqué et ça marche parfaitement! Merci

Mais le problème c'est que malgré le fait qu'il ne valide pas la saisie, mon userform se ferme quand même après avoir cliquer sur OK de la MsgBox..

J'aurai voulu que le userform reste afin que l'opérateur puisse compléter son oubli. Et ensuite, si tout est bien rempli alors là valider et le urserform se ferme..

Si cela fonctionne, c'est une bonne chose.

Afin de faire ce que tu demandes, je pense qu'il suffit d'insérer un Exit Sub sur la ligne avant End If

Si cela ne fonctionne pas, merci de nous fournir un fichier pour travailler ou au moins nous copier-coller ton code VBA complet que je puisse voir comment agrémenter.

A te lire

Je vous remercie pour votre aide

J'ai résolu le problème, en se creusant un peu plus la tête. J'ai juste rajouté une condition en me basant sur ce que vous m'aviez déjà répondu.

Merci encore pour vos réponses !

Cdt

Rechercher des sujets similaires à "obliger utilisateur remplir tout champs userform"