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 :

appeler une userform par un raccourci clavier


Sujet :

Macros et VBA Excel

  1. #1
    Membre du Club
    Inscrit en
    Décembre 2007
    Messages
    63
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 63
    Points : 41
    Points
    41
    Par défaut appeler une userform par un raccourci clavier
    Je voudrais simplement lancez une user form grace à un raccourcis clavier, genre Ctrl + D. Il me semblait l'avoir vu qq part mais je n'ai jamais vraiment ompris comment faire

    Merci !

  2. #2
    Membre éclairé

    Profil pro
    Inscrit en
    Mai 2007
    Messages
    514
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 514
    Points : 824
    Points
    824
    Par défaut
    Bonjour,

    Tu peux utiliser OnKey.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    'DansThisWorkbook
    Private Sub Workbook_Open()
        Application.OnKey "^D", "AfficherFormulaire" 'Ctrl+Maj+d
        'Application.OnKey "^d", "AfficherFormulaire" 'Ctrl+d
    End Sub
     
    'Dans un module standard
    Sub AfficherFormulaire()
        UserForm1.Show   'Adapter le nom du formulaire
    End Sub
    Pense a supprimer ce raccourci quand tu ferme le classeur.

    Cordialement,

    Tirex28/

  3. #3
    Expert éminent
    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
    Points : 6 699
    Points
    6 699
    Par défaut
    Bonjour,

    Pour passer simplement par un raccourci clavier sinon, tu mets bien sur l'ouverture de ton USF dans une procédure sub que tu appelles suivant le petit tuto suivant que j'avais rédigé pour les macros basiques, mais dont la fin concerne ta question particulièrement....

    Pour faire simple sans trop de VBA : (rédigé sur Excel 2003)

    Pour affecter des touches à une nouvelle macro à créer via l’enregistreur…

    Cliquer sur Outils, Macro, NouvelleMacro (Préférer à ALT F8 qui n’emploie pas le même chemin).
    La Boîte Enregistrer une Macro s’ouvre, Par défaut elle propose l’enregistrement dans ce classeur, prendre cette option si on ne sait pas ce que signifie les autres pour le moment.
    Il est bien de donner un nom qui sera évocateur dans la case « Nom de la macro », on s’y retrouvera plus facilement…

    Pour affecter une combinaison de touches à la macro dans la case à côté de CTRL+, on peut ajouter une lettre ou un signe, il est souvent sage de presser en même temps la touche Maj (si on est locké en majuscule c’est automatique) ce qui évite de tomber sur une combinaison utilisée par défaut par Excel..

    Dans Description, on peut changer le message par défaut, ne pas négliger cette case qui permet de mieux se recadrer plus tard…
    Là on est dans l’enregistreur de macro , toutes les actions que l'on effectuera seront enregistrées au niveau du code, ensuite il suffit d’appuyer sur la touche arrêt pour stopper le processus. Il suffit alors d’appuyer sur ALT+F11 pour ouvrir la fenêtre VBA et visualiser le résultat dans un module.


    Pour affecter des touches à une macro déjà existante :

    Outils, Macro (ou ALT + F8) , choisir la macro voulue et cliquer sur Options, on retrouve la même procédure que ci-dessus.
    cordialement,

    Ormonth

  4. #4
    Membre du Club
    Inscrit en
    Décembre 2007
    Messages
    63
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 63
    Points : 41
    Points
    41
    Par défaut
    Merci pour vos indications. Cependant même si la macrd 'appel marche, le raccourci clavier ne marche pas... En effet quand j'appuie sur les touches je n'ai qu'un bruit "d'éhec". Si vous avez une idée...

    Merci encore

  5. #5
    Membre actif Avatar de Many31
    Profil pro
    Inscrit en
    Février 2007
    Messages
    198
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Février 2007
    Messages : 198
    Points : 210
    Points
    210
    Par défaut
    J'ai essayé la méthode plus haut et je vois pas ou peut etre ton problème. Ma userform se charge bien...

    pour résumé ce que j'ai fait...

    J'ai cré une nouvelle macro en précisant le raccourci désiré (dans le cas présent Ctrl+Alt+O) ensuite je suis allé dans le code de ma macro nouvellement créée et j'ai moddifié la sub par:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Sub Macro1()
    '
    ' Macro1 Macro
    ' Macro enregistrée le 18/02/2008 par ******
    '
    ' Touche de raccourci du clavier: Ctrl+Maj+O
    '
    Load UserForm1
    UserForm1.Show
    End Sub
    peut être a tu spécifié un raccourci clavier déjà existant :/
    Au pire si ca ne marche toujours pas essaye de nous copier ton code

Discussions similaires

  1. [POI] Appeler une cellule par son nom
    Par Galak extra dans le forum Documents
    Réponses: 9
    Dernier message: 17/06/2008, 15h33
  2. appeler une action par javaScript
    Par khaledirb7 dans le forum Struts 1
    Réponses: 3
    Dernier message: 14/08/2007, 22h57
  3. [VBA-W] Atteindre une userform par un object
    Par tazamorte dans le forum VBA Word
    Réponses: 6
    Dernier message: 05/04/2007, 18h16
  4. appeler une page par un bouton
    Par ph_anrys dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 28/06/2006, 18h04
  5. [VB6] Appeler une procedure par son nom.
    Par kenn dans le forum VB 6 et antérieur
    Réponses: 8
    Dernier message: 24/05/2006, 10h29

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