Obliger la saisie TextBox Le sujet est résolu

Y compris Power BI, Power Query et toute autre question en lien avec Excel
D
DamienRRRR
Membre habitué
Membre habitué
Messages : 55
Inscrit le : 8 janvier 2020
Version d'Excel : 2016

Message par DamienRRRR » 27 janvier 2020, 14:44

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
TEST - update line - Copie.xlsm
(31.65 Kio) Téléchargé 4 fois
Avatar du membre
Xmenpl
Membre impliqué
Membre impliqué
Messages : 2'679
Appréciations reçues : 185
Inscrit le : 16 mai 2018
Version d'Excel : 2003 à 2013

Message par Xmenpl » 27 janvier 2020, 14:55

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
TEST - update line - Copie (1).xlsm
(23.02 Kio) Téléchargé 4 fois
p
pijaku
Membre fidèle
Membre fidèle
Messages : 423
Appréciations reçues : 27
Inscrit le : 14 janvier 2010
Version d'Excel : 2010 FR

Message par pijaku » 27 janvier 2020, 15:08

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
Cordialement,
Franck
D
DamienRRRR
Membre habitué
Membre habitué
Messages : 55
Inscrit le : 8 janvier 2020
Version d'Excel : 2016

Message par DamienRRRR » 27 janvier 2020, 16:38

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 ?
Avatar du membre
Xmenpl
Membre impliqué
Membre impliqué
Messages : 2'679
Appréciations reçues : 185
Inscrit le : 16 mai 2018
Version d'Excel : 2003 à 2013

Message par Xmenpl » 27 janvier 2020, 16:57

DamienRRRR a écrit :
27 janvier 2020, 16:38
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 ::o ? 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 ::o
D
DamienRRRR
Membre habitué
Membre habitué
Messages : 55
Inscrit le : 8 janvier 2020
Version d'Excel : 2016

Message par DamienRRRR » 27 janvier 2020, 16:59

pardon je voulais dire textbox2
Avatar du membre
Xmenpl
Membre impliqué
Membre impliqué
Messages : 2'679
Appréciations reçues : 185
Inscrit le : 16 mai 2018
Version d'Excel : 2003 à 2013

Message par Xmenpl » 27 janvier 2020, 17:04

DamienRRRR a écrit :
27 janvier 2020, 16:59
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"
D
DamienRRRR
Membre habitué
Membre habitué
Messages : 55
Inscrit le : 8 janvier 2020
Version d'Excel : 2016

Message par DamienRRRR » 27 janvier 2020, 17:18

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.
E
Ericcool02
Membre habitué
Membre habitué
Messages : 77
Appréciations reçues : 9
Inscrit le : 18 octobre 2019
Version d'Excel : 2007

Message par Ericcool02 » 27 janvier 2020, 18:30

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
1 membre du forum aime ce message.
si cela t'a plu, n'oublie pas de "liker" :bien: et
:btres:
@+ Ericcool02
Avatar du membre
Xmenpl
Membre impliqué
Membre impliqué
Messages : 2'679
Appréciations reçues : 185
Inscrit le : 16 mai 2018
Version d'Excel : 2003 à 2013

Message par Xmenpl » 28 janvier 2020, 09:07

DamienRRRR a écrit :
27 janvier 2020, 17:18
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
(19.87 Kio) Téléchargé 3 fois
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.
Répondre Sujet précédentSujet suivant
  • Sujets similaires
    Réponses
    Vues
    Dernier message