IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VBA Access Discussion :

Exécuter un bouton par la touche "Entrée"


Sujet :

VBA Access

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Février 2008
    Messages
    94
    Détails du profil
    Informations personnelles :
    Localisation : France, Vaucluse (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Février 2008
    Messages : 94
    Points : 73
    Points
    73
    Par défaut Exécuter un bouton par la touche "Entrée"
    Bonjour,

    Voilà, j'ai un bouton sur un formulaire.
    Est ce qu'il est possible d'activé le bouton toto lorsque l'on appuie sur la touche Entrée ?

    Merci par avance

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    427
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 427
    Points : 520
    Points
    520
    Par défaut
    Bonjour,

    Interresse-toi à l'évènement "sur touche activée" (KeyPress(KeyAscii As Integer))

  3. #3
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Juillet 2006
    Messages
    1 219
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 79
    Localisation : France

    Informations professionnelles :
    Secteur : Services à domicile

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 219
    Points : 1 707
    Points
    1 707
    Par défaut
    bonjour,
    lorsque le bouton a le focus, l'appui sur la touche entrée correspond normalement à l'évènement sur clic.

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Février 2008
    Messages
    94
    Détails du profil
    Informations personnelles :
    Localisation : France, Vaucluse (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Février 2008
    Messages : 94
    Points : 73
    Points
    73
    Par défaut
    Salut, merci pour les réponses je vais voir ça.
    Pour l'instant voici ce que j'ai trouvé pour la touche Entrée.
    Dans Option Access/Avancé (voir pièce-jointe)
    Images attachées Images attachées  

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Février 2008
    Messages
    94
    Détails du profil
    Informations personnelles :
    Localisation : France, Vaucluse (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Février 2008
    Messages : 94
    Points : 73
    Points
    73
    Par défaut
    Salut LE VIEUX, c'est vrai que si le focus est sur le bouton et que l'on appuie sur Entrée cela fontionne.
    Cependant, dans mon formulaire, l'utilisateur doit insérer des données dans des textbox puis qu'il appuie sur la touche Entrée.
    Peut être que si le textbox est modifié je créé un evenement getfocus sur le bouton. C'est une solution, mais il faudrait appliqué sur tous les textbox c'est peut être un peu lourd.

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    427
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 427
    Points : 520
    Points
    520
    Par défaut
    Attention si tu changes le focus sur modification d'un champ, tu risque de créer des problèmes de continuité de saisie.

    Alors que ton but si j'ai bien compris et de clore ta saisie par la touche entrée.
    Dans ce cas il faut que l'activation de la touche entrée lance les traitements de fin de saisie.

  7. #7
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Juillet 2006
    Messages
    1 219
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 79
    Localisation : France

    Informations professionnelles :
    Secteur : Services à domicile

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 219
    Points : 1 707
    Points
    1 707
    Par défaut
    re,
    essayes, sur évènement "sur touche appuyée" de ton formulaire,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
    If KeyCode = vbKeyReturn Then
    '....code correspondant à ton bouton
    End If
     
    End Sub

  8. #8
    Membre régulier
    Profil pro
    Inscrit en
    Février 2008
    Messages
    94
    Détails du profil
    Informations personnelles :
    Localisation : France, Vaucluse (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Février 2008
    Messages : 94
    Points : 73
    Points
    73
    Par défaut
    Salut,

    Oleff, c'est vrai, je n'ai pas pensé à ce problème. Lorsque je taperais, le focus se placera directement sur le bouton.

    LE VIEUX, j'ai essayé ton code, ça ne fait rien.
    Lorsque j'insère une donnée dans une textbox puis Entrée, rien ne se passe.

    Même pour afficher coucou quand je clique sur une touche, j'ai du mal. Dans OPtion Access / Avancé j'ai essayé les différentes options (aucun effet, champ suivant, enregistrement suivant) ça ne fontionne pas. Quelle galère...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
    MsgBox "coucou"
    End Sub
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub Form_KeyPress(KeyAscii As Integer)
    MsgBox "coucou"
    End Sub
    Merci pour vos aides

  9. #9
    Membre éclairé
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    923
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2008
    Messages : 923
    Points : 760
    Points
    760
    Par défaut
    Bonjour à tous.

    J'ai quelque chose parail dans mes applications, et en fait je une solution un peu improvisée:

    Dans l'ordre de tabulation, j'ai mis le bouton jusqu'après la zone de texte, et comme ça, lors du fin de la saisie, le focus passe au bouton et après il faut cliquer sur entrée encore une fois. Il faut donc presser Entrée deux fois.

    J'espère que ça peut t'aider...

    EDIT:
    Salut,

    Oleff, c'est vrai, je n'ai pas pensé à ce problème. Lorsque je taperais, le focus se placera directement sur le bouton.

    LE VIEUX, j'ai essayé ton code, ça ne fait rien.
    Lorsque j'insère une donnée dans une textbox puis Entrée, rien ne se passe.

    Même pour afficher coucou quand je clique sur une touche, j'ai du mal. Dans OPtion Access / Avancé j'ai essayé les différentes options (aucun effet, champ suivant, enregistrement suivant) ça ne fontionne pas. Quelle galère...


    Code :
    Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
    MsgBox "coucou"
    End SubCode :
    Private Sub Form_KeyPress(KeyAscii As Integer)
    MsgBox "coucou"
    End SubMerci pour vos aides
    Concernat cette solution, t'as la propriété aperçu des touches activé dans l'onglet "événements" des propriétés de ton formulaire?

  10. #10
    Expert éminent sénior

    Avatar de Tofalu
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Octobre 2004
    Messages
    9 501
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Octobre 2004
    Messages : 9 501
    Points : 32 311
    Points
    32 311
    Par défaut
    T'es tu interessé à la propriété Aperçu des touches de ton formulaire ?

  11. #11
    Membre régulier
    Profil pro
    Inscrit en
    Février 2008
    Messages
    94
    Détails du profil
    Informations personnelles :
    Localisation : France, Vaucluse (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Février 2008
    Messages : 94
    Points : 73
    Points
    73
    Par défaut
    Bonjour,

    J'ai mixé les réponses pour me rapprocher de mon besoin.
    Voilà ce que j'ai fais :

    Dans Propriété du formulaire, onglet Evenement :
    Mettre Aperçu des touches à Oui

    Puis dans Evenement prendre Sur touche Appuyé et mettre ce code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
     
    If KeyCode = vbKeyReturn Then
        Mon_Formulaire.Mon_Bouton.SetFocus
    End If
     
    End Sub
    Résultat : lorsque l'on appuie sur la touche Entrée, le focus se place sur le bouton, puis il faut réappuyer sur la touche Entrée pour éxecuter le bouton.

    J'ai essayé de remettre le code du bouton dans la condition du dessus. Mais ça ne fonctionne pas correctement, il manque une sorte de mise à jour. Il faut s'y reprendre 2 fois pour avoir le bon résultat.

    Merci encore pour vos réponses.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Désactiver submit par la touche entrée
    Par tom42 dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 14/02/2007, 15h16
  2. [formulaire] Modifier l'action engendrée par la touche [Entrée]
    Par FrankOVD dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 12/05/2006, 16h58
  3. valider le contenu d'un textbox par la touche entrée
    Par camilla dans le forum VB 6 et antérieur
    Réponses: 4
    Dernier message: 07/10/2005, 15h02

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo