lundi 3 août 2015

Intercepter touche Entrée dans un TextBox

Il suffit d'utiliser l'événement "KeyDown" et de vérifier si le code renvoyé correspond à la touche ENTREE

Private Sub TexBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
    If KeyCode = 13 Then
        'mon code
    End If
End Sub

Selectionner le contenu d'un TextBox qui reçoit le focus

Pour sélectionner le contenu d'une zone de texte (TextBox), utiliser les propriétés SelStart et SelLength du composant.
Créer un TextBox sur un UserForm et placer le code ci-dessous dans une procédure qui donne le focus au TextBox :
(par exemple sur l'évènement Activate du UserForm)


Private Sub UserForm_Activate()
    Me.TextBox1.Value = "Valeur par défaut" 'pour avoir un contenu
    Me.TextBox1.SelStart = 0 'se positionne avant le premier caractère
    Me.TextBox1.SelLength = Len(Me.TextBox1.Text) 'indique la longueur de la sélection
    Me.TextBox1.SetFocus 'donne le focus
End Sub