Comment personnaliser les menus et barres de menus dans Excel

Traductions disponibles Traductions disponibles
Numéro d'article: 830502 - Voir les produits auxquels s'applique cet article
Agrandir tout | Réduire tout

Sommaire

Résumé

Cet article explique comment personnaliser les menus et barres de menus dans Microsoft Excel 2000 et versions ultérieures. Cet article contient des instructions détaillées et des exemples de code pour gérer et personnaliser les barres de menus, menus, commandes, par programme sous-menus et menus contextuels dans Microsoft Excel.

INTRODUCTION

Pour exécuter la plupart des tâches courantes qui sont associées aux personnalisation des barres de menus et menus dans Microsoft Excel 2000, dans Microsoft Excel 2002 et dans Microsoft Office Excel 2003, utilisez le Personnaliserboîte de dialogue. Pour effectuer des tâches plus avancées ou pour personnaliser les menus et barres de menus pour un programme personnalisé, vous souhaiterez peut-être créer Microsoft Visual Basic pour Codes d'applications (VBA).

Pour plus d'informations sur l'utilisation de la boîte de dialogue Personnaliser, cliquez sur Aide de Microsoft Excel sur laAide menu, tapez personnaliser barre de menus dans le Compagnon Office ou dans l'aide intuitive, puis cliquez sur Recherche Pour afficher la rubrique.

Cet article peut vous aider à apprendre les techniques pour écriture de code VBA pour personnaliser les barres de menus, menus, éléments de menus, sous-menus, et menus contextuels.

Plus d'informations

Microsoft fournit des exemples de programmation à titre d'illustration uniquement, sans garantie expresse ou implicite. Cela sous-entend, sans toutefois être exhaustif, un processus opérationnel pour des circonstances d'utilisation particulières. Cet article suppose que vous êtes familiarisé avec le langage de programmation présenté ainsi qu'avec les outils utilisés pour créer et déboguer les procédures. Les ingénieurs du support technique Microsoft sont en mesure de vous expliquer une procédure particulière mais ne modifieront pas le code proposé en vue d'ajouter des fonctionnalité supplémentaires ou bien de concevoir des procédures qui répondraient à vos besoin spécifiques.

Exemples de cet article

Les exemples de cet article utilisent du code VBA dans Excel 2000, dans Excel 2002 et dans Excel 2003 pour personnaliser les menus. Pour utiliser les exemples de macros, procédez comme ces étapes :
  1. Démarrez Excel.
  2. Sur la Outils menu, pointez surMacro, puis cliquez sur Visual Basic Éditeur.
  3. Sur la Insérer menu, cliquez surModule.
  4. Parmi les exemples de macros à partir de cet article, ou si vous tapez permet de copier-coller pour copier les exemples de macro à un module feuille.
  5. Sur la Exécuter menu, cliquez sur Exécuter Sub/UserForm.
  6. Si le Macro boîte de dialogue s'affiche, cliquez sur le nom de la macro, puis cliquez sur Exécuter.

Barres de commandes

Dans Microsoft Office, les barres d'outils, les barres de menus et les raccourcis sont des menus tous contrôlés par programme sous la forme d'un type d'objet : barres de commandes. Tous les les éléments suivants sont représentés dans VBA par les objets CommandBar :
  • Les barres de menus, barres d'outils et menus contextuels.
  • Menus des barres de menus et des barres d'outils.
  • Sous-menus dans les menus, sous-menus et menus contextuels.
Vous pouvez modifier n'importe quelle barre de menus intégrée ou une barre d'outils intégrée, et vous pouvez créer et modifier des barres d'outils personnalisées, les barres de menus et des menus contextuels livrer avec votre code VBA. Vous présenterez les fonctionnalités de votre programme en tant que boutons des barres d'outils ou en tant que groupes de noms de commandes dans les menus. Dans la mesure où menus et barres d'outils sont des barres de commandes, vous utilisez le même type de contrôles.

Dans VBA et dans les éléments de menu, les boutons et Microsoft Visual Basic sont représentés par des objets CommandBarButton . Les menus contextuels qui affichent les menus et sous-menus sont représenté par les objets CommandBarPopup . Dans les exemples suivants, le contrôle est nommé « Menu » et le contrôle est appelé « Sous-menu » sont que les deux fenêtres pop-up des contrôles qui afficher un menu et un sous-menu. Le menu et le sous-menu sont des objets CommandBar uniques avec leur propre jeu de contrôles.

Dans Microsoft Excel, barres de menus et barres d'outils sont appelés le même objet programmable type de l'objet CommandBar . Vous utilisez les contrôles dans l'objet CommandBar pour faire référence aux menus, éléments de menus, sous-menus et raccourci menus. Vous utilisez une constante avec chaque contrôle dans l'argument de Type pour spécifier le type de contrôle que vous avez vous souhaitez utiliser pour le menu, le sous-menu ou la commande.

Constantes de contrôle

Voici une liste des constantes de contrôle différents dans Excel 2003 qui spécifient le type de contrôle de graphique à utiliser pour un menu particulier contrôle de barre :
  • MsoControlActiveX*
  • MsoControlAutoCompleteCombo***
  • MsoControlButton
  • MsoControlButtonDropdown
  • MsoControlButtonPopup
  • MsoControlComboBox
  • MsoControlCustom
  • MsoControlDropdown
  • MsoControlEdit
  • MsoControlExpandingGrid
  • MsoControlGauge
  • MsoControlGenericDropdown
  • MsoControlGraphicCombo
  • MsoControlGraphicDropdown
  • MsoControlGraphicPopup
  • MsoControlGrid
  • MsoControlLabel
  • MsoControlLabelEx***
  • MsoControlOCXDropDown
  • MsoControlPane **
  • MsoControlPopup
  • MsoControlSpinner***
  • MsoControlSplitButtonMRUPopup
  • MsoControlSplitButtonPopup
  • MsoControlSplitDropdown
  • MsoControlSplitExpandingGrid
  • MsoControlWorkPane**
* = Nouveau dans Microsoft Excel 2000
** = Nouveau dans Microsoft Excel 2002
*** = Nouveau dans Microsoft Office Excel 2003

Barres de menus

Une barre de menus est une sorte de barre de commandes. Une barre de menus est le type de objet où vous ajoutez des menus, les éléments de menu et les sous-menus.

Pour plus d'informations informations sur la gestion des barres de menus et éléments de menu dans Excel, procédez comme étapes suivantes :
  1. Démarrez Microsoft Visual Basic Editor.
  2. Sur la Aide menu, cliquez sur Microsoft Aide de Visual Basic.
  3. Dans le Compagnon Office zone ou dans leAide intuitive zone, tapez Barres de menus, et puis cliquez sur Recherche.
  4. Dans Excel 2003 et Excel 2002, cliquez sur Ajout et Gestion des barres de menus et des éléments de Menu. Dans Excel 2000, cliquez sur À propos menus et barres d'outils.
Vous pouvez apporter des modifications à la fois dans le menu de la barre et à la contrôles sur cette barre de menu au moment de l'exécution. Les modifications que vous apportez au menu barre peut-être affecter l'apparence ou la position de la barre de menus. Modifications que vous avez rendre aux contrôles varient selon le type de contrôle. Le tableau suivant répertorie les propriétés les plus courantes et les méthodes communes pour la modification de l'état, le action, ou le contenu d'un contrôle :
Réduire ce tableauAgrandir ce tableau
Propriété ou méthodeObjectif
AjouterAjoute une barre de menus à l'aide de la méthode Add de la collection d'objets CommandBars et en spécifiant la valeur TRUE pour l'argument Menubar .
ActivéSi la propriété Enabled a la valeur TRUE, l'utilisateur peut effectuer le barre de menu spécifié visible à l'aide de code Visual Basic. Si la propriété Enabled a la valeur FALSE, l'utilisateur ne peut pas rendre le menu barre visible. Toutefois, la barre de menus s'affiche dans la liste des commandes disponibles barres.
ProtectionPermet de protéger la barre de menus à partir de actions utilisateur spécifiques.
PositionSpécifie la position de la nouvelle barre de menu relatif à la fenêtre du programme. La position de la barre de menu par rapport à la fenêtre du programme peut être une des propriétés de constantes MsoBarPosition suivantes : msoBarLeft, msoBarTop, msoBarRight, msoBarBottom, msoBarFloating, msoBarPopup (utilisée pour créer des menus contextuels) ou msoBarMenuBar (pour une utilisation avec Apple Macintosh uniquement).
VisibleSpécifie si le contrôle est visible ou masqué.

Retourne un ID pour un contrôle de barre de commandes

L'exemple de code suivant retourne l'ID pour le menu actif barre :
Sub Id_Control ()
Dim myId as Object
   set myId = CommandBars("Worksheet Menu Bar").Controls("Tools")
   MsgBox myId.Caption & Chr(13) & MyId.Id
End Sub

Déterminer le nom de la barre de menus active

L'exemple de code suivant retourne le nom du menu actif barre :
Sub MenuBars_GetName()
   MsgBox CommandBars.ActiveMenuBar.Name
End Sub

Enregistrer l'état actif (pour intégrés ou des barres de menus personnalisées)

Vous pouvez choisir de déclarer la variable OriginalMenuBar une variable publique afin qu'une sous-routine puisse l'utiliser dans une autre sous-routine, par exemple une sous-routine Auto_Close. Déclaration et utilisation de la variable de cette manière réinitialise barre de menus précédente de l'utilisateur à son état d'origine. L'exemple de macro suivant réinitialise la barre de menus :
Public OriginalMenuBar as Object

Sub MenuBars_Capture()
   Set OriginalMenuBar = CommandBars.ActiveMenuBar
End Sub

Créer une barre de commandes personnalisé

L'exemple de code suivant crée une barre de commandes personnalisée qui est nommé Ma barre de commande:
Sub MenuBar_Create() Application.CommandBars.Add Name:="My command bar" End Sub

Vous pouvez également créer une barre de commandes personnalisée à l'aide de la Temporary: = True argument. Le Temporary: = True argument autorise automatiquement les barres de commandes pour réinitialiser lorsque vous quittez Excel. Le code suivant utilise la Temporary: = True argument pour créer une barre de commandes personnalisée :
Sub MenuBar_Create()
Application.CommandBars.Add Name:="My command bar", Temporary:=True
End Sub

Afficher une barre de commandes personnalisé

L'exemple suivant crée et affiche un personnalisé Mon Barre personnalisée barre de menus, puis remplace la barre de menus intégrée :
Sub MenuBar_Show()
Dim myNewBar As Object
   Set myNewBar = CommandBars.Add(Name:="Custom1", Position:=msoBarFloating)
   ' You must first enable your custom menu bar before you make it visible.
   ' Enabling a menu bar adds it to the list of available menu bars on
   ' the Customize dialog box.
' Setting the menubar property to True replaces the built-in menu bar.
   myNewBar.Enabled = True
   myNewBar.Visible = True
End Sub

Supprimer une barre de commandes personnalisé

L'exemple de code suivant supprime la barre de menus personnalisée qui est nommé Personnalisé 1:
Sub MenuBar_Delete()
   CommandBars("Custom1").Delete
End Sub

Masquer une barre de commandes

L'exemple de code suivant supprime l'intégré Graphique barre de menus dans la liste des barres de menus disponibles :
Sub MenuBar_Display()
   CommandBars("Chart").Enabled = False
End Sub

Afficher une barre de commandes

L'exemple de code suivant ajoute l'intégré Graphique barre de menus dans la liste des barres de menus disponibles :
Sub MenuBar_Display()
   CommandBars("Chart").Enabled = True
End Sub

Restaurer une barre de commandes

Restauration d'une barre de menus réinitialise les contrôles par défaut (pour les deux menus et éléments de menu). L'exemple suivant restaure l'intégré Graphique barre de menus :
Sub MenuBar_Restore()
   CommandBars("Chart").Reset
End Sub
Remarque : Vous ne pouvez réinitialiser les barres de menus intégrée. Vous ne pouvez pas réinitialiser un personnalisé barre de menus.

Menus

Restauration d'une barre de menus réinitialise les contrôles par défaut (pour les deux menus et éléments de menu). L'exemple suivant restaure l'intégré Graphique barre de menus :

Sub MenuBar_Restore()
   CommandBars("Chart").Reset
End Sub
Remarque : Vous ne pouvez réinitialiser les barres de menus intégrée. Vous ne pouvez pas réinitialiser un personnalisé barre de menus.

Ajoutez un contrôle de menu personnalisé à une barre de commandes

L'exemple de code suivant ajoute le nom d'un menu que vous ajoutez par programme à la Feuille de calcul barre de menus. Par exemple, cela code ajoute le nom du menu Nouveau Menu à l'à la Feuille de calcul barre de menus.

Remarque : Vous pouvez donner à ce menu n'importe quel nom que vous souhaitez.
Sub Menu_Create()
Dim myMnu As Object
   Set myMnu = CommandBars("Worksheet menu bar").Controls. _
      Add(Type:=msoControlPopup, before:=3)
   With myMnu
   ' The "&" denotes a shortcut key assignment (Alt+M in this case).
      .Caption = "New &Menu"
   End With
End Sub

Désactiver un contrôle de menu sur une barre de commandes

Un contrôle de menu est désactivé est estompé et n'est pas disponible sur une barre de commandes. L'exemple suivant désactive le Nouveau Menu menu :
Sub Menu_Disable()
   CommandBars("Worksheet menu bar").Controls("New &Menu").Enabled = False
End Sub

Activer un contrôle menu sur une barre de commandes

L'exemple de code suivant active le menu Nouveau Menu que vous avez désactivé dans le « désactiver un contrôle de menu sur un section de barre de commande":
Sub Menu_Disable()
   CommandBars("Worksheet menu bar").Controls("New &Menu").Enabled = True
End Sub

Supprimer un contrôle de menu sur une barre de commandes

Le code suivant exemple supprime le Nouveau Menumenu que vous avez créé dans « Ajouter un contrôle de menu personnalisé à une barre de commandes » section à partir de la Feuille de calcul barre de menus :
Sub Menu_Delete()
   CommandBars("Worksheet menu bar").Controls("New &Menu").Delete
End Sub

Restauration d'un contrôle menu sur une barre de commandes

L'exemple suivant restaure l'intégré Graphique barre de menus sur la Feuille de calcul barre de menus :
Sub Menu_Restore()
Dim myMnu As Object
   Set myMnu = CommandBars("Chart")
   myMnu.Reset
End Sub

Commandes

Dépend de la plage de modifications que vous pouvez apporter à une commande sur le type de contrôle. En règle générale, les boutons sont soit activées ou sont masqués. Modifier zones, les zones de liste déroulante et les zones modifiables sont plus polyvalents dans la mesure où vous pouvez ajouter ou supprimer des éléments dans la liste. En outre, vous pouvez déterminer l'action qui est exécuté en regardant la valeur des éléments que vous avez sélectionné à partir de la liste. Vous pouvez modifier l'action de n'importe quel contrôle à une fonction intégrée ou à une fonction personnalisée.

Le tableau suivant répertorie les plus courants propriétés d'un contrôle et les méthodes de modification de l'état, l'action, ou le contenu d'un contrôle :
Réduire ce tableauAgrandir ce tableau
Propriété ou méthodeObjectif
AjouterAjoute une commande à une barre de commandes.
AddItemAjoute un élément à la partie de la liste déroulante du menu déroulant zone de liste ou une zone de liste déroulante.
StyleSpécifie si l'image du bouton affiche une icône ou un légende.
OnActionSpécifie la procédure à exécuter lorsque l'utilisateur modifie la valeur du contrôle.
VisibleSpécifie si le contrôle est visible ou masqué.

Pour plus d'informations sur les menus dans Excel 2003 et dans Excel 2002, procédez comme suit :
  1. Démarrez l'éditeur de Script Visual Basic.
  2. Sur la Aide menu, cliquez sur Microsoft Aide de Visual Basic.
  3. Dans le Aide à la recherche zone, tapezmenus, puis appuyez sur ENTRÉE.
  4. Cliquez sur Ajout et gestion des barres de menus et éléments de Menu (Office).

Ajouter une barre de séparation à un contrôle de menu

L'exemple de code suivant ajoute une barre de séparation avant la commande de feuille de calcul sur le Insérer menu :
Sub menuItem_AddSeparator()
   CommandBars("Worksheet menu bar").Controls("Insert") _
   .Controls("Worksheet").BeginGroup = True
End Sub
Remarque : Pour supprimer une barre de séparation, définissez la propriété BeginGroup sur False.

Créer un contrôle de commande personnalisée dans un menu

L'exemple de code suivant crée une nouvelle commande nommée Custom1 sur le Outils menu de la Feuille de calcul barre de menus, puis exécute la macro Code_Custom1 lorsque vous cliquez sur Custom1:
Sub menuItem_Create()
   With CommandBars("Worksheet menu bar").Controls("Tools")
      .Controls.Add(Type:=msoControlButton, Before:=1).Caption = "Custom1"
      .Controls("Custom1").OnAction = "Code_Custom1"
   End With
End Sub

Placez une coche en regard d'un contrôle de commande

L'exemple de code suivant place une coche en regard de la commande Custom1 si elle n'est pas sélectionné et supprime ensuite la case à cocher si la commande Custom1 est sélectionnée :
Sub menuItem_checkMark()
Dim myPopup as Object

   Set myPopup = CommandBars("Worksheet menu bar").Controls("Tools")
   If myPopup.Controls("Custom1").State = msoButtonDown Then
      ' Remove check mark next to menu item.
      myPopup.Controls("Custom1").State = msoButtonUp
      MsgBox "Custom1 is now unchecked"
      Else
        ' Add check mark next to menu item.
         myPopup.Controls("Custom1").State = msoButtonDown
         MsgBox "Custom1 is now checked"
    End If
End Sub

Désactiver un contrôle de commande sur une barre de commandes

L'exemple de code suivant désactive la commande Custom1 que vous avez créé sur le Outils menu de la section « créer un contrôle de commande personnalisée dans un menu » :
Sub MenuItem_Disable()
Dim myCmd as Object
   Set myCmd = CommandBars("Worksheet menu bar").Controls("Tools")
   myCmd.Controls("Custom1").Enabled = False
End Sub

Activer le contrôle de commande dans une barre de commandes

L'exemple de code suivant active la commande de Custom1 que vous avez désactivé dans le « désactiver un contrôle de commande sur un section de barre de commande":
Sub MenuItem_Enable()
Dim myCmd as Object
   Set myCmd = CommandBars("Worksheet menu bar").Controls("Tools")
   myCmd.Controls("Custom1").Enabled = True
End Sub

Supprimer un contrôle de commande dans un menu

L'exemple de code suivant supprime le Enregistrercommande sur le Fichier menu :
Sub menuItem_Delete()
Dim myCmd As Object
   Set myCmd = CommandBars("Worksheet menu bar").Controls("File")
   myCmd.Controls("Save").Delete
End Sub

Restauration d'un contrôle de commande intégrée dans un menu

Pour restaurer un contrôle de commande dans un menu, vous devez connaître le numéro d'identification (ID) du contrôle. Pour déterminer le numéro d'identification, consultez le Section « Retourner un ID pour un contrôle de barre de commandes ». L'exemple suivant supprime puis restaure le Enregistrer commande que vous avez supprimé dans la Section « Supprimer un contrôle de commande dans un menu » :
Sub menuItem_Restore()
Dim myCmd As Object
   Set myCmd = CommandBars("Worksheet menu bar").Controls("File")
   ' Id 3 refers to the Save menu item control.
   myCmd.Controls.Add Type:=msoControlButton, ID:=3, Before:=5
End Sub

Sous-menus

Sous-menus s'affichent à côté du menu parent lorsque vous cliquez sur un commande. Une commande qui est un contrôle de sous-menu comporte une petite flèche noire qui est situé à l'extrémité droite du nom de commande.

Ajouter un sous-menu

L'exemple de code suivant ajoute un nouveau sous-menu nommé NewSub à la Outils menu de la Feuille de calcul barre de menus :
Sub SubMenu_Create()
Dim newSub as Object
   Set newSub = CommandBars("Worksheet menu bar").Controls("Tools")
   With newSub
      .Controls.Add(Type:=msoControlPopup, Before:=1).Caption="NewSub"
   End With
End Sub

Ajouter une commande à un sous-menu

L'exemple de code suivant ajoute une nouvelle commande nommée SubItem1 à la NewSub sous-menu, puis exécute la macro Code_SubItem1 lorsque vous cliquez sur SubItem1:
Sub SubMenu_AddItem()
Dim newSubItem as Object
   Set newSubItem = CommandBars("Worksheet menu bar") _
   .Controls("Tools").Controls("NewSub")
   With newSubItem
      .Controls.Add(Type:=msoControlButton, Before:=1).Caption = "SubItem1"
      .Controls("SubItem1").OnAction = "Code_SubItem1"
   End With
End Sub

Désactiver un contrôle de commande d'un sous-menu

L'exemple de code suivant désactive la même commande de sous-éléments que vous avez créé dans « Ajouter une commande à un sous-menu » section :

Sub SubMenu_DisableItem()
   CommandBars("Worksheet menu bar").Controls("Tools") _
   .Controls("NewSub").Controls("SubItem1").Enabled = False
End Sub


L'exemple suivant active la même commande de sous-élément :
Sub SubMenu_DisableItem()
   CommandBars("Worksheet menu bar").Controls("Tools") _
   .Controls("NewSub").Controls("SubItem1").Enabled = True
End Sub

Pour supprimer une commande d'un sous-menu

L'exemple suivant supprime la commande SubItem1 que vous avez créé sur le NewSub sous-menu dans la section « Ajouter une commande à un sous-menu » :
Sub SubMenu_DeleteItem()
   CommandBars("Worksheet menu bar").Controls("Tools") _
   .Controls("NewSub").Controls("SubItem1").Delete
End Sub

Désactiver un contrôle de sous-menu

L'exemple de code suivant désactive le NewSubsous-menu que vous avez créé sur le Outils menu de la « ajouter un section du sous-menu":
Sub SubMenu_DisableSub()
   CommandBars("Worksheet menu bar").Controls("Tools") _
   .Controls("NewSub").Enabled = False
End Sub
Remarque : Pour activer le contrôle est désactivé, la propriété Enabled la valeur true.

Supprimer un contrôle de sous-menu

L'exemple de code suivant supprime le NewSubsous-menu que vous avez créé sur le Outils menu de la « ajouter un section du sous-menu":
Sub SubMenu_DeleteSub()
   CommandBars("Worksheet menu bar").Controls("Tools") _
   .Controls("NewSub").Delete
End Sub

Barres de menu contextuel

Un menu contextuel est une barre de commandes flottante qui s'affiche lorsque le utilisateur clique un objet. Une barre de menu contextuel peut contenir le même contrôle types sous la forme d'une barre de commandes et les contrôles comportent de même que les contrôles sur un barre de commandes. Vous ne pouvez pas créer ou modifier des menus contextuels à partir du programme interface dans la plupart des programmes. Par conséquent, vous devez créer et modifier votre raccourci menus au moment de l'exécution.

Pour plus d'informations sur les menus contextuels dans Excel 2002 et dans Excel 2003, procédez comme suit :
  1. Démarrez l'éditeur de Script Visual Basic.
  2. Sur la Aide menu, cliquez sur Microsoft Aide de Visual Basic.
  3. Dans le Aide à la recherche zone, tapezraccourci, puis appuyez sur ENTRÉE.
  4. Cliquez sur Ajout et affichage de raccourci Menus.

Créer une nouvelle barre de menu contextuel

L'exemple de code suivant crée une nouvelle barre de menu de raccourci est nommé myShortcutBar:

Sub Shortcut_Create()
Dim myShtCtBar as Object
   Set myShtCtBar = CommandBars.Add(Name:="myShortcutBar", _
   Position:=msoBarPopup)
   ? This displays the shortcut menu bar.
   ? 200, 200 refers to the screen position in pixels as x and y coordinates.
   myShtCtBar.ShowPopup 200,200
End Sub

Remarque : La barre de menu contextuel apparaît vide dans la mesure où aucun contrôle (menu éléments ou des sous-menus) ont été ajoutés à celui-ci.

Menus contextuels

Les barres de menus contextuels apparaissent lorsque vous utilisez le bouton droit de la souris pour Cliquez sur un objet Excel spécifique. Excel dispose de plusieurs barres de menus contextuels pour lequel un variété de menus sont disponibles. Vous pouvez également créer des barres de menus contextuels personnalisés et personnalisez les barres de menus intégrée.

Créer une commande dans une barre de menu contextuel

L'exemple de code suivant crée une nouvelle commande de menu est nommé Item1 sur le myShortcutBar barre de menu contextuel et il exécute la macro Code_Item1 lorsque vous cliquez sur Item1:
Sub Shortcut_AddItem()
Dim myBar as Object
   Set myBar = CommandBars("myShortcutBar")
   With myBar
      .Controls.Add (Type:=msoControlButton, before:=1).Caption = "Item1"
      .Controls("Item1").OnAction = "Code_Item1"
   End With
   myBar.ShowPopup 200,200
End Sub

Désactiver un contrôle de commande sur une barre de menu contextuel

L'exemple de code suivant désactive la commande Item1 que vous avez créé dans le « créer une commande sur un raccourci section "menu :
Sub Shortcut_DisableItem()
   Set myBar = CommandBars("myShortcutBar")
   myBar.Controls("Item1").Enabled = False
   myBar.ShowPopup 200,200
End Sub
Remarque : Pour activer l'élément désactivé, définissez la propriété Enabled sur True.

Pour supprimer une commande dans une barre de menu contextuel

L'exemple de code suivant supprime la commande de menu nommée Item1 sur le myShortcutBar barre de menu contextuel :
Sub Shortcut_DeleteItem()
   Set myBar = CommandBars("myShortcutBar")
   myBar.Controls("Item1").Delete
   myBar.ShowPopup 200,200
End Sub

Supprimer une barre de menu contextuel

Suppression de la barre de menu de raccourcis supprime tous les éléments. Vous ne pouvez pas restaurer la barre de menus personnalisée supprimés. Pour la restaurer, vous devez recréer ainsi que tout les éléments de menu et les sous-menus.

L'exemple de code suivant supprime le myShortCutBar barre de menu contextuel que vous avez créé dans le Section « créer une commande sur une barre de menu contextuel » :
Sub Shortcut_DeleteShortCutBar()
   CommandBars("MyShortCutBar").Delete
End Sub

Restaurer une commande sur un barre de menus contextuels intégrés

L'exemple de code suivant rétablit les commandes par défaut sur le feuille de calcul Cellule barre de menu contextuel :
Sub Shortcut_RestoreItem()
   CommandBars("Cell").Reset
End Sub

Sous-menus dans les menus contextuels

Vous pouvez créer des sous-menus sur raccourci barres de menus. Sous-menus s'affichent à le côté du menu parent lorsque vous cliquez sur un contrôle command. Une commande est un contrôle de sous-menu possède une flèche noire petite qui se trouve à droite du son nom.

Créer un sous-menu sur une barre de menu contextuel

L'exemple suivant ajoute un nouveau sous-menu nommé NewSub sur la feuille de calcul Cellule menu contextuel :
Sub ShortcutSub_Create()
   CommandBars("Cell").Controls.Add(Type:=msoControlPopup, before:=1) _
   .Caption = "NewSub"
    ' This displays the shortcut menu bar.
    ' 200, 200 refers to the screen position in pixels as x and y coordinates.
   CommandBars("Cell").ShowPopup 200, 200
End Sub
Remarque : Le sous-menu est vide car aucun élément de menu n'ont été ajoutés à Il s'agit.

Créer un contrôle de commande d'un sous-menu qui se trouve sur une barre de menu contextuel

La macro suivante ajoute la commande SubItem1 dans le sous-menu NewSub que vous avez créé sur la Cellule menu contextuel, puis exécute la macro Code_SubItem1 lorsque vous cliquez sur SubItem1:
Sub ShortcutSub_AddItem()
Dim newSubItem as Object
   Set newSubItem = CommandBars("Cell").Controls("NewSub?)
   With newSubItem
      .Controls.Add(Type:=msoControlButton, before:=1).Caption = "subItem1"
      ' This will run the subItem1_Code macro when subItem1 is clicked.
      .Controls("subItem1").OnAction = "Code_subItem1"
   End With
   ' This displays the Cell shortcut menu bar.
   ' 200, 200 refers to the screen position in pixels as x and y coordinates
   CommandBars("Cell").ShowPopup 200, 200
End Sub

Désactiver un contrôle d'élément de sous-menu d'un menu contextuel

L'exemple de code suivant désactive la commande SubItem1 sur le NewSub sous-menu :
Sub ShortcutSub_DisableItem()
   CommandBars("Cell").Controls("NewSub") _
   .Controls("subItem1").Enabled = False
   ' This displays the Cell shortcut menu bar.
   ' 200, 200 refers to the screen position in pixels as x and y coordinates.
   CommandBars("Cell").ShowPopup 200, 200
End Sub
Remarque : Pour activer un élément désactivé, la propriété Enabled la valeur true.

Supprimer un contrôle d'élément de sous-menu d'un menu contextuel

L'exemple suivant supprime la commande SubItem1 sur le NewSub sous-menu :
Sub ShortcutSub_DeleteItem()
   CommandBars("Cell").Controls("NewSub").Controls("subItem1").Delete
   ' This displays the Cell shortcut menu bar.
   ' 200, 200 refers to the screen position in pixels as x and y coordinates.
   CommandBars("Cell").ShowPopup 200, 200
End Sub

Désactiver un contrôle de sous-menu d'un menu contextuel

L'exemple de code suivant désactive le NewSubsous-menu sur le Cellule barre de menu contextuel :
Sub ShortcutSub_DisableSub()
   CommandBars("Cell").Controls("NewSub").Enabled = False
   ' This displays the Cell shortcut menu bar.
   ' 200, 200 refers to the screen position in pixels as x and y coordinates.
   CommandBars("Cell").ShowPopup 200, 200
End Sub
Remarque : Pour activer un élément désactivé, la propriété Enabled la valeur true.

Supprimer un contrôle de sous-menu d'un menu contextuel

L'exemple de code suivant supprime le NewSubsous-menu que vous avez créé sur le Cellule barre de menu contextuel :
Sub ShortcutSub_DeleteSub()
   CommandBars("Cell").Controls("NewSub").Delete
   ' This displays the Cell shortcut menu bar.
   ' 200, 200 refers to the screen position in pixels as x and y coordinates.
   CommandBars("Cell").ShowPopup 200, 200
End Sub

En savoir plus

Les ressources suivantes sont disponibles pour fournir plus d'informations sur la façon de personnaliser les menus et barres de menus dans Excel.

Explorateur d'objets

L'Explorateur d'objets contient une liste complète de toutes les propriétés et toutes les méthodes d'une commande spécifique. Pour trouver ces informations, basculez vers l'éditeur Visual Basic (appuyez sur ALT + F11), cliquez sur Explorateur d'objetssur la Affichage menu (ou appuyez sur F2), tapez le nom du contrôle dans le Recherche zone, puis appuyez sur entrée ou cliquez sur Recherche.

Base de connaissances Microsoft.

La Base de connaissances Microsoft est un produit Microsoft primaire source d'information pour la prise en charge des Services de Support technique Microsoft professionnels. La Base de connaissances Microsoft est également disponible pour Microsoft clients. Cette base de données complète contient des articles détaillés avec informations techniques sur les produits Microsoft, liste des correctifs documentés, erreurs de documentation et les réponses aux questions fréquentes techniques prennent en charge questions.

Pour vous connecter à la Base de connaissances Microsoft, consultez le suivant le site Web de Microsoft et puis suivez les instructions qui s'affichent à la page :
http://support.Microsoft.com

Propriétés

Numéro d'article: 830502 - Dernière mise à jour: dimanche 28 avril 2013 - Version: 12.0
Les informations contenues dans cet article s'appliquent au(x) produit(s) suivant(s):
  • Microsoft Excel 2002
  • Microsoft Excel 2000 Standard
Mots-clés : 
kbhowtomaster kbmt KB830502 KbMtfr
Traduction automatique
IMPORTANT : Cet article est issu d'une traduction automatique réalisée par un logiciel Microsoft et non par un traducteur professionnel. Cette traduction automatique a pu aussi être révisée par la communauté Microsoft grâce à la technologie Community Translation Framework (CTF). Pour en savoir plus sur cette technologie, veuillez consulter la page http://support.microsoft.com/gp/machine-translation-corrections/fr. Microsoft vous propose en effet des articles traduits par des professionnels, des articles issus de traductions automatiques et des articles issus de traductions automatiques révisées par la communauté Microsoft, de manière à ce que vous ayez accès à tous les articles de notre Base de connaissances dans votre langue. Il est important de noter que les articles issus de la traduction automatique, y compris ceux révisés par la communauté Microsoft, peuvent contenir des erreurs de vocabulaire, de syntaxe ou de grammaire. Microsoft ne pourra être tenu responsable des imprécisions, erreurs, ainsi que de tout dommage résultant d?une traduction incorrecte du contenu ou de son utilisation par les clients.
La version anglaise de cet article est la suivante: 830502
L'INFORMATION CONTENUE DANS CE DOCUMENT EST FOURNIE PAR MICROSOFT SANS GARANTIE D'AUCUNE SORTE, EXPLICITE OU IMPLICITE. L'UTILISATEUR ASSUME LE RISQUE DE L'UTILISATION DU CONTENU DE CE DOCUMENT. CE DOCUMENT NE PEUT ETRE REVENDU OU CEDE EN ECHANGE D'UN QUELCONQUE PROFIT.

Envoyer des commentaires

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com