Keycode vbKeyControl et vbKeyRight simultanément.

Résolu/Fermé
Sormick Messages postés 145 Date d'inscription dimanche 10 novembre 2013 Statut Membre Dernière intervention 8 avril 2024 - Modifié le 20 juin 2022 à 10:00
NHenry Messages postés 15113 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 22 avril 2024 - 20 juin 2022 à 19:20
Bonjour,

Je n'arrive pas à récupérer cette saisie clavier lorsque je suis dans texbox1:

Private Sub TextBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)

if  KeyCode = vbKeyControl and KeyCode = vbKeyRight then
msgbox "Détection OK"

end if
End Sub





Configuration: Configuration: Windows / Chrome 102.0.0.0

2 réponses

ThauTheme Messages postés 1442 Date d'inscription mardi 21 octobre 2014 Statut Membre Dernière intervention 29 juillet 2022 160
20 juin 2022 à 10:55
Bonjour Sormick, bonjour le forum,

L'événement KeyDown ne s'applique, il me semble, qu'à une seule touche et pas à une combinaison. Mais voyons ce qu'en disent les balaises qui rôdent par ici...
0
Sormick Messages postés 145 Date d'inscription dimanche 10 novembre 2013 Statut Membre Dernière intervention 8 avril 2024
20 juin 2022 à 11:12
Merci. Il y a t'il un autre moyen de détecter la combinaison de ces touches par exemple avec un autre évènement?
0
Sormick Messages postés 145 Date d'inscription dimanche 10 novembre 2013 Statut Membre Dernière intervention 8 avril 2024
20 juin 2022 à 11:46
Bonjour,

J'ai finalement réussi à détecter la combinaison des deux touches en faisant:
if Shift = 2 And vbKeyRight Then
0
NHenry Messages postés 15113 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 22 avril 2024 331
20 juin 2022 à 19:20
En effet, l'événement KeyDown ne s'applique qu'à une seule touche (peut être exception faites des modificateurs : Alt, Shift, Ctrl) .

Pour faire ce que tu veux avec cette méthode, il te faut mémoriser quelle touches a été pressée (grace à KeyDown) et les oublier quand l'événement KeyUp correspondant est généré.
0