Syntaxe VBA pour appeler une "Sub" après action de la touche "Enter"

Bonjour à toutes et tous,

J'essaye d'appeler ma sous-routine exemple( ) après que l'information de la cellule active soit validée par la touche "Enter", et je bute sans cesse sur des messages d'erreur.

Application.OnKey "{ENTER}", "exemple" J'ai essayé avec et sans guillemets, parenthèses, accolades, deux points, égale ...

Merci à qui saura aider "l'analphabète du VBA"

Georges

bonjour,

la touche ENTER est la touche de validation sur le clavier numérique, l'autre de touche de validation est RETURN. Ton problème ne vient-il pas d'une confusion entre ces 2 touches ?

Merci "Fanatique" !

J'ignorais cela. Je vais essayer de voir la différence entre "Return" et "Enter", déjà en code Ascii.

Bonne soirée

Je pense que j'ai écrit une C... je viens de lire que les caractères Ascii sont "imprimables" donc ...

ENTER et RETURN ... Je vais pouvoir (comme chantait Jo Dassin) "aller là-haut sur la colline", siffler, siffler ... et attendre !!!

bonsoir,

Si ce que tu recherches c'est détecter que quelqu'un a introduit une valeur dans une cellule, tu peux gérer cela via les événement worksheet_change ou workbook_Sheetchange.

exemple de code à mettre dans le module de thisworkbook.

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
    MsgBox "le contenu de la cellule " & Target.Address & " de la feuille " & Sh.Name & " a été modifié"
End Sub

Salut, "Acide Sulfurique"

Je vais essayer ton code et ne manquerai pas de te tenir au courant du résultat.

Par contre, sais-tu si oui ou non il existe un code VBA pour détecter l'utilisation de la touche ENTER ?

(ou RETURN, car contrairement à MAC, il semble que sous Windows on ne fasse pas la distinction ).

Merci, et bonne journée !

Georges

Salut So4H2

Je n'ai pas réussi avec ton code.

Comme pour mes précédentes tentatives, je n'ai en retour que des messages d'erreur, dont un nouveau qui me dit que le nom de la procédure "est sujet à confusion".

Désolé !

Bonjour,

je t'ai mis un fichier exemple avec l'exécution de procédure suite à la validation par Enter et par Return. Pour que cela fonctionne il faut d'abord activer la fonctionnalité. (lancer la procédure activation, ou cliquer sur le bouton activer dans le fichier exemple)

1return-enter.xlsm (15.24 Ko)
Sub activation()
    Application.OnKey "{Enter}", "proc_Enter"
    Application.OnKey "{Return}", "proc_Return"
    MsgBox "détections de return et Entrée activées"
End Sub

Sub proc_Enter()
    MsgBox "validation par touche Entrée/Enter"
End Sub

Sub proc_Return()
    MsgBox "validation par touche Retour/Return"
End Sub

Sub desactivation()
    Application.OnKey "{Enter}", ""
    Application.OnKey "{Return}", ""
    MsgBox "détections de return et Entrée désactivées"
End Sub

Merci SO4H2 !
Cet ensemble fonctionne impec'.

Je vais maintenant tâcher d'intégrer ce code à mon bricolage.

Bonne journée

Georges "l'analpha-bète du VBA"

Rechercher des sujets similaires à "syntaxe vba appeler sub action touche enter"