VBA Excel - Détection de touche

Résolu
Tweet75 Messages postés 87 Date d'inscription jeudi 5 novembre 2009 Statut Membre Dernière intervention 3 janvier 2012 - 29 nov. 2009 à 12:03
us_30 Messages postés 2065 Date d'inscription lundi 11 avril 2005 Statut Membre Dernière intervention 14 mars 2016 - 29 nov. 2009 à 14:43
Bonjour,

J'ai cherché d'autres post parlant de ce sujet mais je n'ai rien trouvé.
J'ai mis une textbox sur une feuille excel et je voudrais que lorsque l'on appuie sur la touche Entrée, un msgbox apparaisse. Voici mon code :


Private Declare Function SetCurrentDirectoryA Lib "kernel32" (ByVal lppathname As String) As Long

Private Sub textbox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
MsgBox (KeyAscii)
If KeyAscii = 13 Then
MsgBox ("enter")
Else
MsgBox ("pas enter")
End If
End Sub

J'ai beau appuyé sur la touche entrée mais rien ne se passe. Par contre si je change la valeur de 13 à 49(touche "1") par exemple, et la ca marche...
Quelqu'un pourrait me dire pourquoi ?

Merci d'avance

4 réponses

jmf0 Messages postés 1566 Date d'inscription mardi 26 décembre 2000 Statut Membre Dernière intervention 5 avril 2013 8
29 nov. 2009 à 12:13
Bonjour,

1) apprends que VBA n'est pas VB6 (tu n'es pas dans le bon thème)
2) C'est d'autant plus gênant que les réactions d'une TextBox d'un UserForm VBA ne sont pas les mêmes que celles d'une TextBox VB6
3) utilise pour ta textbox l'évènement KeyDown ou l'évènement KeyUp pour "relever" l'emploi de la touche ENTER
4) c'est la dernière fois que je répondrai à une de tes questions si tu ne sais pas la poser dans le bon thème (VBA et non VB6). Sérieux
3
Rejoignez-nous