Obliger la saisie TextBox

Bonjour

je voudrais obliger l'utilisateur a ne pas laisser vide ma textbox 1, j'arrive pas a trouver la formule magique.

pouvez vous m'aider svp ?

le userForme est destiné a rajouter une ligne tableau.

pour ajouter une ligne il faut se positionner sur une cellule de la colonne A

Il suffit d'ajouter un test de ta textbox1

au début de ton bouton "Valider"

If TextBox1.Value = "" Then
MsgBox ("Vous ne pouvez laisser vide l'information DOC_ID")
Exit Sub
End If

Bonjour,

Ou alors avec deux événements :

Private Sub UserForm_Activate()
    TextBox1.SetFocus
End Sub

Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
    Cancel = TextBox1 = ""
End Sub

Super ça marche trés trés bien merci beaucoup

par contre je voudrais mettre un la la lettre F sur le textebox1 et il sera pas modifiable quand je lance le userforme (forcer le F sur cet text box

tu a une idée stp ?

Super ça marche trés trés bien merci beaucoup

par contre je voudrais mettre un la la lettre F sur le textebox1 et il sera pas modifiable quand je lance le userforme (forcer le F sur cet text box

tu a une idée stp ?

Traduction ? Il y a une info à saisir quand même dans la textbox1 ou non ? La Textbox1 c'est l' "ID"

à saisir ; quel rapport avec ton F ?

Si on met un F et qu'on bloque la saisie alors il n'y a plus de raison de tester la textbox1

pardon je voulais dire textbox2

pardon je voulais dire textbox2

Ok mais la 2 c'est "Title / Contents" donc tu veux juste 1 F comme titre ?

Essaies d'expliquer la finalité de ce qui va apparaitre dans la colonne B de la feuille. Pas juste un F quand même ? sinon autant virer la textbox directement ?

et remplacer dans le code :

Cells(Lig, 2) = TextBox2.Value

par Cells(Lig, 2) = "F"

en faite le document est destiné a des utilisateurs qui doivent respecter certain façon de remplire les cases de tableau :

dans mon cas : la cellule relié a ma textebox2 commence toujours par F- après une référence exemple F-2020. et a chaque fois les utilisateurs oublient de mettre le F et ils mettent 2020 direct.

Bonjour le forum

Bonjour Damien, Xmenpl, pijaku

Tu places ce code :

Private Sub UserForm_Activate()
With Me.TextBox2
.SetFocus
.Text = "F-"
.MaxLength = 6      'A adapter - Dans le présent cas, tu peux entrer 6 caractères donc F- et 4 chiffres
End With
End Sub

en faite le document est destiné a des utilisateurs qui doivent respecter certain façon de remplire les cases de tableau :

dans mon cas : la cellule relié a ma textebox2 commence toujours par F- après une référence exemple F-2020. et a chaque fois les utilisateurs oublient de mettre le F et ils mettent 2020 direct.

Bonjour,

Je me doutais d'un truc dans ce genre là dans ce cas. Dans de cas tu peux ajouter une Texbox de taille

réduite pour y inscrire "F - " juste devant ta textbox2 pour indiquer à l'utilisateur que le début de la Référence est déjà renseigné ( propriété "locked" sur true ).

Ensuite dans le code une simple modification à la validation :

Cells(Lig, 2) = "F-" & TextBox2.Value

Tu remarqueras que la touche "Tabulation" pour passer d'une case à l'autre ne s'arrête pas sur "F-" et

qu'on ne peut donc rien saisir à cet endroit.

Bonjour le forum

Bonjour Damien, Xmenpl, pijaku

Tu places ce code :

Private Sub UserForm_Activate()
With Me.TextBox2
.SetFocus
.Text = "F-"
.MaxLength = 6      'A adapter - Dans le présent cas, tu peux entrer 6 caractères donc F- et 4 chiffres
End With
End Sub

Bonjour

ton code ne permet pas de saisir de caractères ou chiffre après le F- ?

en faite le document est destiné a des utilisateurs qui doivent respecter certain façon de remplire les cases de tableau :

dans mon cas : la cellule relié a ma textebox2 commence toujours par F- après une référence exemple F-2020. et a chaque fois les utilisateurs oublient de mettre le F et ils mettent 2020 direct.

Bonjour,

Je me doutais d'un truc dans ce genre là dans ce cas. Dans de cas tu peux ajouter une Texbox de taille

réduite pour y inscrire "F - " juste devant ta textbox2 pour indiquer à l'utilisateur que le début de la Référence est déjà renseigné ( propriété "locked" sur true ).

Ensuite dans le code une simple modification à la validation :

Cells(Lig, 2) = "F-" & TextBox2.Value

TEST - update line - Copie (1) (1).xlsm

Tu remarqueras que la touche "Tabulation" pour passer d'une case à l'autre ne s'arrête pas sur "F-" et

qu'on ne peut donc rien saisir à cet endroit.

Bonjour

la proposition de Ericcool02 est plus adequate a mon cahier des charges mais le probleme c'est que sont code permet de placer un F- sur le texbox mais il permet pas l'ecriture apres, peux-tu regarder stp

Re le fil,

Ben si le TextBox est fait pour cela, saisir des données. Tu noteras que la taille est limitée à 6 caractères (ton exemple F-2020) mais modifiable et que tu peux entrer soit des caractères numériques ou alphanumériques.

17damien.xlsm (14.32 Ko)

Bonjour

la proposition de Ericcool02 est plus adequate a mon cahier des charges mais le probleme c'est que sont code permet de placer un F- sur le texbox mais il permet pas l'ecriture apres, peux-tu regarder stp

Ericcool02 peut répondre lui même.

Ton cahier des charges prévoit qu'à l'ouverture du userform la saisie commence par la textbox2 ?

Set focus à l'ouverture du userform.

Chacun sa façon de voir les choses. par ailleurs rien n'empêche

l'effacement des caractères F- avec cette méthode.

Dans l'absolu faudrait inverser les textbox pour commencer par celle-ci. dans ce cas.

Rechercher des sujets similaires à "obliger saisie textbox"