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 Word Discussion :

[VBA-W] Ajout par vb de commandes dans les menus contextuels de Word


Sujet :

VBA Word

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2004
    Messages : 4
    Points : 4
    Points
    4
    Par défaut [VBA-W] Ajout par vb de commandes dans les menus contextuels de Word
    Bonjour à tous,

    Je voudrais insérer des macros dans le menu contextuel de word (clic droit de la souris). Cette opération peut être faite manuellement par l'option "personnaliser" .... mais il faut ajouter ces macros dans tous les sous-menus des sous-menus (3) du menu contextuel (soit une douzaine). En plus, il faudrait que je fasse cette opération pour une vingtaine de personnes. Je me demandais donc s'il n'y avait pas moyen de créer une macro, un code vb permettant d'insérer automatiquement des macros dans le menu contextuel.

    J'ai utilisé l'enregistrement automatique d'une macro pour voir s'il était possible de préciser l'endroit où les macros doivent être insérées dans le menu contextuel et de préciser le nom de la macro à insérer dans ce menu contextuel. Il est possible de préciser le nom du sous-menu du menu contextuel dans lequel il faut insérer la macro, mais il ne semble pas possible de préciser le nom de la macro à insérer.

    Voici le code la macro enregistrée et dont les opérations étaient : personnaliser, ajout de la macro Googlesearch (contenue dans le module "macrosgénérales") dans le sous-menu "Footnotes" du sous-menu "Text" du menu contextuel (il y a trois sous-menus principaux : "Text" "Table" et "Draw", chacun comportant des sous-menus) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Sub addtoshortcutmenu()
    '
    ' addtoshortcutmenu Macro
    ' Macro recorded 6/2/2004 by froland
    '
        CommandBars("Footnotes").Controls.Add Type:=msoControlButton, Before:=4
    End Sub
    La portion CommandBars("Footnotes") permet de déterminer le sous-menu dans lequel il faut insérer la macro.

    Before:=4 permet de déterminer l'emplacement de l'insertion de la macro dans le menu contextuel relatif à footnotes.

    Quid du nom de la macro que je voudrais insérer ???

    Quelqu'un saurait-il m'aider à faire en sorte que je puisse préciser le nom de la macro à insérer ?

    Merci d'avance !

  2. #2
    Expert éminent
    Avatar de bidou
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mai 2002
    Messages
    3 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Transports

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 055
    Points : 7 962
    Points
    7 962
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    Dim MonControl As CommandBarButton
     
        Set MonControl = CommandBars("("Footnotes"").Controls.Add(Type:=msoControlButton, Before:=4)
        MonControl.OnAction = "MaMacro"

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2004
    Messages : 4
    Points : 4
    Points
    4
    Par défaut
    er

  4. #4
    Candidat au Club
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2004
    Messages : 4
    Points : 4
    Points
    4
    Par défaut
    Désolé, autant pour moi !!! Il ne fallait pas indiquer "normal.macrogénérales", mais simplement le nom de la macro !

    La macro crée donc une nouvelle commande dans le menu contextuel. La macro insérée dans le menu contextuel fonctionne, mais son nom n'apparaît pas dans ce menu. La "case" est vide, mais si l'on clique dessus, la macro insérée est activée.

    Comment faire pour que le nom de la macro insérée soit visible dans le menu contextuel ???

    Merci d'avance !

    Le code utilisé était :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Sub addtoshortcutmenu()
    Dim MonControl As CommandBarButton
     
        Set MonControl = CommandBars("Text").Controls.Add(Type:=msoControlButton, Before:=4)
        MonControl.OnAction = "GoogleSearch"
    End Sub

  5. #5
    Candidat au Club
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2004
    Messages : 4
    Points : 4
    Points
    4
    Par défaut
    Ok, j'avoue que je n'avais pas assez recouru aux informations en ligne, puisque j'ai trouvé la réponse moi-même.

    Merci de votre aide !

    Le code final est :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Sub addtoshortcutmenu()
    Dim MonControl As CommandBarButton
     
        Set MonControl = CommandBars("Text").Controls.Add(Type:=msoControlButton, Before:=4)
        MonControl.OnAction = "VanDale"
        MonControl.Caption = "VanDale"
    End Sub

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 08/10/2008, 04h15
  2. Réponses: 4
    Dernier message: 22/02/2008, 10h02
  3. [DW MX2004] Inclusion d'ancres dans les menus contextuels
    Par bègles dans le forum Dreamweaver
    Réponses: 3
    Dernier message: 20/03/2007, 16h14
  4. Ajouter une commande dans le menu contextuel
    Par Tenguryu dans le forum C++Builder
    Réponses: 2
    Dernier message: 02/04/2006, 12h43
  5. Ajout de bouton de commandes dans la barre de menus
    Par vanessaf22 dans le forum IHM
    Réponses: 9
    Dernier message: 21/07/2003, 11h38

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