rendre obligatoire la saisie d'un textbox

  • Initiateur de la discussion daniel
  • Date de début
D

daniel

Guest
Bonsoir le forum,

Voila ma question pascale...
Dans un USF, j'ai deux Textbox. Je voudrais que l'on ne puisse pas passer à la deuxième tant que la première n'est pas remplie.

J'arrive à gérer cela avec l'évènement 'exit', mais le problème c'est que je ne peux même plus activer un bouton d'annulation pour sortir de mon userform ou pour annuler la saisie tout simplement !! Je suis obligé de remplir ma textbox pour pouvoir le faire...

Si quelqu'un(e) pouvait m'aider à touver un moyen d'annuler la saisie sans faire apparaître constamment mon message me demandant de saisir...

Merci et Joyeuses Pâques !!

Daniel

Voilà mon code:

Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)

If TextBox1.Value = '' Then
MsgBox 'vous devez remplir ce champ'
Cancel = True
Exit Sub
Else
TextBox2.SetFocus
end if
End
 
F

Franck

Guest
Salut daniel

Voila sans vouloir marcher a reculon je fonctionnerai a l'envers

ocupe toi de ton textbox2 et renvoi le focus au textbox1

Private Sub TextBox2_Enter()
If TextBox1.Value = '' Then
TextBox1.SetFocus
Exit Sub
Else
'suite de ton code ou rien du tout
End If
End Sub

Tu peu evidement y inserer un message

j'ai essayé ça marche

Cancel = True = pas besoin
 

Robert

XLDnaute Barbatruc
Repose en paix
Salut Daniel, Franck, salut le forum,

Pas la solution Daniel car j'ai eu le même problème que toi et j'ai finalement opté pour une solution sur le CommandButton de validation de mon UserForm. C'est lui qui me renvoie sur un textbox (ou autre) non renseigné. L'avantage c'est qu'au Clic sur lui tu es forcément sorti (exit) de tous les autres champs. Je n'utilise pratiquement plus l'événement Exit à cause de ce défaut majeur qui empêche la fermeture de l'Userform. Mais je suis sûr qu'un des nombreux experts de ce forum te trouvera une vraie solution (je reste attentif aussi).


Franck je n'avais pas lu ta proposition quand j'ai posté.

Message édité par: Robert, à: 26/03/2005 20:38
 
F

Franck

Guest
Re pour Daniel Robert et le forum

Je comprend pas votre pb avec exit sub
mais si tu le met avec Private Sub TextBox2_Enter()
rien ne t'empechera de fermer ton USF quand tu le voudra

Je reste a votre dispo pour un fichier démo
A + Franck
 

CBernardT

XLDnaute Barbatruc
Bonjour Daniel, Robert et franck,


La solution est certainement, comme le dit Franck, dans :

Private Sub Tbprénom_Enter()
If Tbnom.Value = '' Then
MsgBox 'vous devez saisir un nom avant de saisir le prénom, merci !'
Tbnom.SetFocus
End If

Ici, il est demandé de saisir obligatoirement le nom avant le prénom.

Cordialement

CBernardT

Message édité par: CBernardT, à: 27/03/2005 11:40
 

Discussions similaires

Membres actuellement en ligne

Aucun membre en ligne actuellement.

Statistiques des forums

Discussions
312 305
Messages
2 087 084
Membres
103 459
dernier inscrit
Arnocal