Désactiver le clavier sauf une touche

Bonjour tous le monde !

Tout est dans le titre. Comment pourrais-je désactiver le clavier à l'ouverture de mon fichier Excel à l'exception de la touche, Num 3.

Merci par avance

Bonjour,

Je pense que c'est une question difficile, on peut désactiver tout le clavier ainsi :

Private Declare Function BlockInput Lib "user32" (ByVal fBlock As Long) As Long
Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
Private Sub Form_Activate()
DoEvents
'block the mouse and keyboard input
BlockInput True
'wait 10 seconds before unblocking it
Sleep 10000
'unblock the mouse and keyboard input
BlockInput False
End Sub

Pour ma part, je ne vois pas comment laisser le contrôle à une seule touche... pourquoi tu veux faire ça ?

Bonjour,

Merci de la réponse.

En réalité la touche 3 peut aussi être désactiver c'était juste une sécurité pour différent contrôle..

Par contre dans ton code tu as aussi la désactivation de la souris est ce normal ?

Merci d'avance.

En effet, cette fonction désactive toute saisie...

J'ai trouvé un autre code :

Sub KeyboardOff()
' Sets CTRL+D to activate KeyboardOn.
Application.OnKey "^d", "KeyboardOn"
Application.DataEntryMode = True
End Sub

Sub KeyboardOn()
Application.DataEntryMode = False
End Sub

Utile ?

Rechercher des sujets similaires à "desactiver clavier sauf touche"