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

Macros et VBA Excel Discussion :

Raccourci clavier pour UserForm [XL-2007]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    57
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 57
    Par défaut Raccourci clavier pour UserForm
    Bonjour
    Je cherche à créer des raccourci clavier exemple (Alt +y) pour un UserForm,j'ai fait ceci

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Public Sub Workbook_Open()
    Application.OnKey "%y", "essai"
    End Sub
    que j'ai mis dans ThisWorbook
    et cela que j'ai mis dans un module

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Public Sub essai()
    MsgBox " ca marche"
     
    End Sub
    Cela fonctionne très bien pour feuil mais pas pour un UserForm

    En fait ce que je cherche, c'est faire fonctionner cette toupie qui se trouve dans un UserForm ,par un raccourci clavier

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Private Sub PointRouge_SpinDown()       'PointRouge -1
    If PointRouge.Caption = 0 Then Exit Sub
     PointRouge.Caption = PointRouge.Caption - 1
    End Sub
    Private Sub PointRouge_SpinUp()         'PointRouge +1
       If PointRouge.Caption < 9 Then
       PointRouge.Caption = PointRouge.Caption + 1
       End If
    End Sub
    merci

  2. #2
    Membre expérimenté
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    207
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 207
    Par défaut
    Peut-être comme cela (j'ai supposé que ton userform s'appelle usf et que c'est la touche 'bas' qui est pressée...à adapter donc):

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Private Sub usf_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
     
    If KeyCode = vbKeyDown Then Call PointRouge_SpinDown()
     
    End Sub

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    57
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 57
    Par défaut
    Merci Sclarckone
    Je viens d'essayer cela ne fonctionne pas.
    J'ai mis ce code dans le module Thisworbook,je l'ai mis dans le code du formulaire
    j'ai mis un point d'arrêt ,il n'y a jamais de passage par ce point.
    Franc83

  4. #4
    Membre expérimenté
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    207
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 207
    Par défaut
    Je le mettrais plutôt dans le module du formulaire, parce que tu n'en as besoin que quand le formulaire s'affiche. D'ailleurs je ne sais pas quelle est la portée d'un évènement d'un userform mais il serait logique qu'elle soit limitée au userform (si un évènement survient au niveau du userform c'est que ce dernier est forcément chargé...).

  5. #5
    Modérateur
    Avatar de AlainTech
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mai 2005
    Messages
    4 235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2005
    Messages : 4 235
    Par défaut
    Bonjour à tous,

    Sclarckone,
    Citation Envoyé par Sclarckone Voir le message
    Peut-être comme cela (j'ai supposé que ton userform s'appelle usf)
    En VBA, les procédures événementielles liées à un userform sont toujours préfixées UserForm_ quel que soit son nom.
    La bonne syntaxe est donc:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Private Sub UserForm_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
    N'oubliez pas de cliquer sur quand vous avez obtenu ou trouvé vous-même la réponse à votre question.
    Si vous trouvez seul, pensez à poster votre solution. Elle peut servir à d'autres!
    Pensez aussi à voter pour les réponses qui vous ont aidés.
    ------------
    Je dois beaucoup de mes connaissances à mes erreurs!

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

    Informations forums :
    Inscription : Décembre 2010
    Messages : 57
    Par défaut
    Merci
    Il me semble que c'est du VBA access, je suis dans le forum EXEL ,et j'utilise VBA EXEL 2007, par contre vous avez peu être la solution,
    merci d'avance

  7. #7
    Membre expérimenté
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    207
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 207
    Par défaut
    Absolument pas! De toute façon il n'y a pas de VBA Excel et Access. Il y a VBA et des bibliothèques spécifiques à Access, Excel, Word...
    Dans ce cas en plus, les 'userform' appartiennent à la bibliothèque MSForms qui est différente des bibliothèques Access et Excel.

  8. #8
    Expert confirmé
    Avatar de Didier Gonard
    Homme Profil pro
    Formateur Office et développeur VBA en freelance
    Inscrit en
    Février 2008
    Messages
    2 805
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Formateur Office et développeur VBA en freelance

    Informations forums :
    Inscription : Février 2008
    Messages : 2 805
    Par défaut
    Citation Envoyé par franc83 Voir le message
    Merci
    Il me semble que c'est du VBA access,
    Sur quels critères ?

    cordialement,

    Didier

  9. #9
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    57
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 57
    Par défaut
    Autant pour moi
    J'ai mis ce code dans le code du formulaire mais cela ne fonctionne pas, j'ai mis un point d'arrêt il n'y a pas de passage par ce point.
    J'ai fait une recherche dans l'aide , la commande keyCode il connait pas .
    merci

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

Discussions similaires

  1. utilisation des raccourcis claviers pour debugger.
    Par Mobistar dans le forum Eclipse Java
    Réponses: 8
    Dernier message: 30/05/2007, 15h39
  2. raccourcis clavier pour JMenuItem
    Par Jmakolish dans le forum AWT/Swing
    Réponses: 1
    Dernier message: 19/06/2006, 13h44
  3. Raccourci clavier pour liste déroulante
    Par enguerran dans le forum Balisage (X)HTML et validation W3C
    Réponses: 7
    Dernier message: 17/05/2006, 04h53
  4. [eclipse 3.0.1]Raccourci clavier pour changer de fichier
    Par partyboy dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 04/11/2004, 15h06
  5. [] Raccourci clavier pour bouton d'une barre d'outil
    Par Sébastien dans le forum VB 6 et antérieur
    Réponses: 12
    Dernier message: 24/03/2003, 17h02

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