Passer à la textbox suivante par la touche entrée

Résolu
Landry85 Messages postés 96 Statut Membre -  
Landry85 Messages postés 96 Statut Membre -
Bonsoir,

J'ai 5 textbox , quand j'entre du texte dedans il se copie automatiquement dans une cellule avec le code :

Private Sub Textbox1_Change()

Sheets("CourrierExpertise").Range("F4") = Me.TextBox1.Value

End Sub

J'aimerais tout simplement que la copie s'effectue après avoir pressé "entrée" et que le curseur passe dans la textbox suivante (de textbox1 vers textbox2).

Merci du coup de main :-)

4 réponses

  1. willy
     
    Essaye ceci :

    
    Private Sub Textbox1_Change()
      Worksheets("CourrierExpertise").[F4] = TextBox1: TextBox2.SetFocus
    End Sub
    
    
    0
    1. Landry85 Messages postés 96 Statut Membre 2
       
      Alors, j'ai modifié le .SetFocus qui ne fonctionnait pas par .Activate et là ça passe bien à la textbox suivante, mais le petit Hic, c'est que cela produit dès que je presse une touche du coup je ne peux entrer que la première lettre du mot à taper.
      Il ne manque surement que l'action "touche Entrée pressée" mais je ne trouve comment l'écrire.
      0
  2. Archer
     
    bonjour
    peux etre comme ca

    Private Sub TextBox1_BeforeUpdate(ByVal Cancel As MSForms.ReturnBoolean)
    Sheets("CourrierExpertise").Range("F4") = TextBox1.Value
    End Sub
    

    A+
    Maurice
    0
    1. Landry85 Messages postés 96 Statut Membre 2
       
      Bonjour,
      Non ça ne fonctionne pas plus :-/
      0
  3. Landry85 Messages postés 96 Statut Membre 2
     
    J'ai essayé ça mais ça ne fonctionne pas plus :

    'FONCTIONNEMENT DE LA TEXTBOX1
    
    Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
        Worksheets("CourrierExpertise").[F4] = TextBox1.Value
        TextBox2.Activate
    End Sub


    J'ai en fait du mal à comprendre/traduire le fonctionnement de la ligne private sub
    0
  4. Landry85 Messages postés 96 Statut Membre 2
     
    Yeeeeesssss !!!!!!

    J'ai trouvé après différents essais :-)

    'FONCTIONNEMENT DE LA TEXTBOX1
    
    Private Sub TextBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
    
        If KeyCode = 13 Then Sheets("CourrierExpertise").Range("F4") = TextBox1.Value: TextBox2.Activate
        
        
    End Sub
    


    Merci à vous!!!

    PS :-D Vous pouvez aussi remarquer que j'ai trouvé comment coller un vrai
    code, j'apprends... :-)
    0