J'ai cr=C3=A9=C3=A9 une userform que j'affiche avec une seule et unique zon=
e de texte.
Je tape, dans cette zone, un texte que j'exploite par la suite.
A la fin de mon texte, je voudrais sortir en tapant "Enter" et fermer ma "u=
serform" par la m=C3=AAme occasion.
J'utilise la fonction Enter de la zone de texte, mais je n'arrive pas =C3=
=A0 sortir.
Seule l'utilisation de la souris pour fermer le fen=C3=AAtre fonctionne...
Pouvez vous m'aider ?
D'avance Merci =C3=A0 tous
Alf
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
MichD
Bonjour, Comme ceci : ce code doit être dans le module du formulaire! '------------------------------------------------------- Private Sub TextBox1_KeyDown(ByVal KeyCode As _ MSForms.ReturnInteger, ByVal Shift As Integer) If KeyCode = 13 Then 'Masque le formulaire Me.Hide 'décharge le formulaire de 'mémoire vivre Unload Me End If End Sub '------------------------------------------------------- MichD
Bonjour,
Comme ceci : ce code doit être dans le module du formulaire!
'-------------------------------------------------------
Private Sub TextBox1_KeyDown(ByVal KeyCode As _
MSForms.ReturnInteger, ByVal Shift As Integer)
If KeyCode = 13 Then
'Masque le formulaire
Me.Hide
'décharge le formulaire de
'mémoire vivre
Unload Me
End If
End Sub
'-------------------------------------------------------
Bonjour, Comme ceci : ce code doit être dans le module du formulaire! '------------------------------------------------------- Private Sub TextBox1_KeyDown(ByVal KeyCode As _ MSForms.ReturnInteger, ByVal Shift As Integer) If KeyCode = 13 Then 'Masque le formulaire Me.Hide 'décharge le formulaire de 'mémoire vivre Unload Me End If End Sub '------------------------------------------------------- MichD
| mais pourquoi faut-il utiliser KeyDown à la place de Enter ? Parce que cet événement se produit à chaque fois que tu appuies sur une touche. Chaque touche du clavier à un code et ce code est passée en paramètre à la procédure par la variable KeyCode. Dans le cas de la touche "Enter", son code est 13. Par conséquent, lorsque la procédure s'exécute suite à un appui sur une touche, la procédure teste si la touche appuyée est 13, si c'est vrai, elle exécute les actions demandées. '------------------------------- Private Sub TextBox1_KeyDown(ByVal KeyCode As _ MSForms.ReturnInteger, ByVal Shift As Integer) '------------------------------- MichD
| mais pourquoi faut-il utiliser KeyDown à la place de Enter ?
Parce que cet événement se produit à chaque fois que tu appuies sur une
touche. Chaque touche du clavier à un code et ce code est passée en
paramètre à la procédure par la variable KeyCode. Dans le cas de la touche
"Enter", son code est 13. Par conséquent, lorsque la procédure s'exécute
suite à un appui sur une touche, la procédure teste si la touche appuyée est
13, si c'est vrai, elle exécute les actions demandées.
'-------------------------------
Private Sub TextBox1_KeyDown(ByVal KeyCode As _
MSForms.ReturnInteger, ByVal Shift As Integer)
'-------------------------------
| mais pourquoi faut-il utiliser KeyDown à la place de Enter ? Parce que cet événement se produit à chaque fois que tu appuies sur une touche. Chaque touche du clavier à un code et ce code est passée en paramètre à la procédure par la variable KeyCode. Dans le cas de la touche "Enter", son code est 13. Par conséquent, lorsque la procédure s'exécute suite à un appui sur une touche, la procédure teste si la touche appuyée est 13, si c'est vrai, elle exécute les actions demandées. '------------------------------- Private Sub TextBox1_KeyDown(ByVal KeyCode As _ MSForms.ReturnInteger, ByVal Shift As Integer) '------------------------------- MichD
Si tu veux savoir à quoi sert la propriété "EnterKeyBehavior", regarde à
cette adresse (en anglais0
https://msdn.microsoft.com/en-us/vba/language-reference-vba/articles/enterkeybehavior-property
et pour la propriété "EnterFieldBehavior", il y a ceci :
https://msdn.microsoft.com/fr-fr/VBA/Language-Reference-VBA/articles/enterfieldbehavior-property
Le "Enter" que tu utilises dans ta question, je ne sais pas à quoi tu fais
référence.
- Message parti trop vite... Le "Enter" que tu utilises dans ta question, je ne sais pas à quoi tu fais référence. Si c'est à ceci, c'est une procédure événementielle qui est déclenchée à chaque fois que le curseur entre dans le textbox. '------------------ Private Sub TextBox1_Enter() End Sub '------------------ MichD
- Message parti trop vite...
Le "Enter" que tu utilises dans ta question, je ne sais pas à quoi tu fais
référence. Si c'est à ceci, c'est une procédure événementielle qui est
déclenchée à chaque fois que le curseur entre dans le textbox.
- Message parti trop vite... Le "Enter" que tu utilises dans ta question, je ne sais pas à quoi tu fais référence. Si c'est à ceci, c'est une procédure événementielle qui est déclenchée à chaque fois que le curseur entre dans le textbox. '------------------ Private Sub TextBox1_Enter() End Sub '------------------ MichD