Anpassen von Menüs und Menüleisten in Excel

SPRACHE AUSWÄHLEN SPRACHE AUSWÄHLEN
Artikel-ID: 830502 - Produkte anzeigen, auf die sich dieser Artikel bezieht
Alles erweitern | Alles schließen

Auf dieser Seite

Zusammenfassung

Dieser Artikel beschreibt das Anpassen von Menüs und Menüleisten in Microsoft Excel 2000 und höher. Dieser Artikel enthält schrittweise Anweisungen und Codebeispielen programmgesteuert verwalten und Anpassen von Menüleisten, Menüs, Befehle, Untermenüs und Kontextmenüs in Microsoft Excel.

EINFÜHRUNG

Viele gängige Aufgaben ausführen, die zugeordnet sind Anpassen von Menü- und Menüs in Microsoft Excel 2000 in Microsoft Excel 2002, und in Microsoft Office in Excel 2003 verwenden die Anpassenim Dialogfeld. Für komplexere Aufgaben oder zum Anpassen von Menü- und Menüs für ein benutzerdefiniertes Programm sollten Sie Microsoft Visual Basic für erstellen Codes für Applikationen (VBA).

Weitere Informationen dazu, wie Sie das Dialogfeld Anpassen verwenden klicken Sie auf Microsoft Excel-Hilfe auf derHilfe im Menü Anpassen Menüleiste in den Office- oder Antwort-Assistent, und klicken Sie dann auf Suche um das Thema anzuzeigen.

In diesem Artikel helfen Ihnen die Techniken zum Lernen Schreiben von VBA-Code zum Anpassen von Menüleisten, Menüs, Menüelemente, Untermenüs und Kontextmenüs.

Weitere Informationen

Microsoft bietet Programmierbeispiele lediglich zur Veranschaulichung, ohne Gewährleistung, ausdrücklich oder konkludent. Dies beinhaltet, jedoch nicht beschränkt auf konkludente Garantien der Handelsüblichkeit oder Eignung für einen bestimmten Zweck. In diesem Artikel wird davon ausgegangen, dass Sie mit der Programmiersprache, die Programmlistings und vertraut mit den Tools, die zum Erstellen und Debuggen von Prozeduren verwendet werden. Microsoft-Supporttechniker können der Erläuterung der Funktionalität bestimmter Prozeduren helfen werden, jedoch sie nicht verändern diese Beispiele, um eine erweiterte Funktionalität oder Prozeduren entwickeln Ihren spezifischen Anforderungen zugeschnitten.

Beispiele in diesem Artikel

Die Beispiele in diesem Artikel verwenden VBA-Code in Excel 2000, in Excel 2002 und Excel 2003 zur Anpassung von Menüs. Führen Sie mithilfe der Beispiel-Makros Diese Schritte:
  1. Starten Sie Excel.
  2. Auf der Tools Menü, zeigen Sie aufMakro, und klicken Sie dann auf Visual Basic Editor.
  3. Auf der Einfügen Menü, klicken Sie aufModul.
  4. Geben Sie einen Makro Beispiele aus diesem Artikel, oder Sie können kopieren und Einfügen in den Makrobeispielen auf ein Modul kopieren Blatt.
  5. Auf der Ausführen Menü, klicken Sie auf Ausführen Sub/Benutzerformular.
  6. Wenn die Makro im Dialogfeld angezeigt wird, klicken Sie auf der Name des Makros, und klicken Sie dann auf Ausführen.

Befehlsleisten

Sind in Microsoft Office, Symbolleisten, Menüleisten und Tastenkombinationen Menüs alle programmgesteuert als gemeinsamer Objekttyp gesteuert: Befehlsleisten. Alle der folgende Elemente werden in VBA durch CommandBar -Objekte dargestellt:
  • Menüleisten, Symbolleisten und Kontextmenüs.
  • Menüs in Menüleisten und Symbolleisten.
  • Untermenüs in Menüs, Untermenüs und Kontextmenüs.
Sie können jede integrierte Menüleiste oder eine beliebige integrierte Symbolleiste ändern, und Sie erstellen und benutzerdefinierte Symbolleisten, Menüleisten und Kontextmenüs ändern können mit VBA-Code liefern. Sie stellen die Funktionen des Programms als einzelne Schaltflächen auf Symbolleisten oder als Gruppen von Befehlen in Menüs. Da Symbolleisten und Menüs sind beide Befehlsleisten Sie verwenden die gleiche Art von Steuerelemente.

In VBA und Microsoft Visual Basic, Schaltflächen und Menüelemente werden durch CommandBarButton -Objekte dargestellt. Popup-Steuerelemente, die Menüs und Untermenüs angezeigt werden. durch CommandBarPopup -Objekte dargestellt. In den folgenden Beispielen, die das Steuerelement mit dem Namen "Menü" und das Steuerelement mit dem Namen "Untermenü" sind beide Popup-Steuerelemente ein Menü und ein Untermenü anzeigen. Klicken Sie im Menü und Untermenü sind eindeutige CommandBar -Objekte mit eigenen Steuerelementen.

In Microsoft Excel, Menüleisten und Symbolleisten werden die gleichen programmierbares Objekt genannt Typ, das CommandBar -Objekt. Die Steuerelemente in das CommandBar -Objekt verwenden, um auf Menüs, Menüelemente und Untermenüs Verknüpfung verweisen Menüs. Eine Konstante mit jedes Steuerelement in das Argument Type zu verwenden, um den Typ des Steuerelements anzugeben, dass Sie für das Menü, Untermenü oder den Befehl verwenden möchten.

Steuerelement-Konstanten

Es folgt eine Liste der verschiedenen Konstanten Steuerelement in Excel 2003, die grafische Steuerelement für ein bestimmtes Menü geben Bar-Steuerelement:
  • 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**
? neu in Microsoft Excel 2000
** = New in Microsoft Excel 2002
*** = New Microsoft Office Excel 2003

Menüleisten

Eine Menüleiste ist eine Art der Befehlsleiste. Eine Menüleiste ist die Art der Objekt, in dem Sie Menüs, Menüelemente und Untermenüs hinzufügen.

Weitere Informationen Führen Sie die folgenden Informationen zum Verwalten von Menüleisten und Menüelementen in Excel Schritte:
  1. Microsoft Visual Basic-Editor zu starten.
  2. Auf der Hilfe Menü, klicken Sie auf Microsoft Visual Basic Hilfe.
  3. In der Office-Assistenten Feld oder in derAntwort-Assistent Geben Sie im Feld Menüleisten, und Klicken Sie dann auf Suche.
  4. Klicken Sie in Excel 2003 und Excel 2002 Hinzufügen und Verwalten von Menüleisten und Menüelementen. Klicken Sie in Excel 2000 Über Menüs und Symbolleisten.
Klicken Sie im Menü bar und die Änderungen können die Steuerelementen dieser Menüleiste zur Laufzeit. Die Änderungen, die Sie im Menü vornehmen Bar beeinflussen die Darstellung oder die Position der Menüleiste. Änderungen, die Sie Stellen Sie auf die Steuerelemente hängen von den Steuerelementtyp. Der folgenden Tabelle werden die am häufigsten verwendeten Eigenschaften und die allgemeinen Methoden zum Ändern des Zustands der Aktion oder den Inhalt eines Steuerelements:
Tabelle minimierenTabelle vergrößern
Eigenschaft oder MethodeZweck
HinzufügenFügt eine Menüleiste hinzu, indem mithilfe der Add -Methode der Auflistung CommandBars -Objekt und den Wert true für das Menubar -Argument.
AktiviertWenn die Enabled -Eigenschaft auf den Wert TRUE festgelegt ist, können der Benutzer die angegebene Menüleiste mithilfe von Visual Basic Code sichtbar. Wenn die Enabled -Eigenschaft auf FALSE festgelegt ist, kann nicht der Benutzer im Menü vornehmen. Leiste sichtbar. Die Menüleiste wird jedoch in der Liste der verfügbaren Befehle angezeigt. Balken.
SchutzMacht es möglich, dass Sie die Menüleiste zu schützen bestimmte Benutzeraktionen.
PositionGibt die Position der neuen Menüleiste relativ zum das Programmfenster. Die Position der Menüleiste relativ zum Programmfenster kann eine der folgenden MsoBarPosition Eigenschaften Konstanten sein: MsoBarLeft, MsoBarTop, MsoBarRight, MsoBarBottom, MsoBarFloating, MsoBarPopup (zum Erstellen von Kontextmenüs) oder MsoBarMenuBar (nur zur Verwendung mit Apple Macintosh).
SichtbarGibt an, ob das Steuerelement sichtbar ist oder ausgeblendet.

Eine ID für ein Steuerelement der Befehlsleiste zurück

Im folgenden Codebeispiel gibt die ID für das aktive Menü zurück. Leiste:
Sub Id_Control ()
Dim myId as Object
   set myId = CommandBars("Worksheet Menu Bar").Controls("Tools")
   MsgBox myId.Caption & Chr(13) & MyId.Id
End Sub

Bestimmen Sie den Namen der aktiven Menüleiste

Im folgenden Codebeispiel gibt den Namen für das aktive Menü zurück. Leiste:
Sub MenuBars_GetName()
   MsgBox CommandBars.ActiveMenuBar.Name
End Sub

Speichern Sie den aktiven Zustand (für integrierte oder benutzerdefinierte Menüleisten)

Sie möchten die Variable OriginalMenuBar eine öffentliche Variable deklarieren, sodass eine Unterroutine in verwendet werden kann eine andere Unterroutine, z. B. ein Auto_Close-Unterroutine. Deklarieren und verwenden die auf diese Weise ist Variable setzt vorherige Menüleiste des Benutzers in den ursprünglichen Zustand. Das folgende Makro setzt die Menüleiste zurück:
Public OriginalMenuBar as Object

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

Erstellen Sie eine benutzerdefinierte Befehlsleiste

Der folgende Beispielcode erstellt eine benutzerdefinierte Befehlsleiste, die mit dem Namen Meine Befehlsleiste:
Sub MenuBar_Create() Application.CommandBars.Add Name:="My command bar" End Sub

Sie können auch eine benutzerdefinierte Befehlsleiste mit Erstellen der temporäre: = True Argument. Die temporäre: = True Argument ermöglicht die Befehlsleisten auf automatisch Beim Beenden von Excel zurückgesetzt werden. Im folgenden Codebeispiel wird die temporäre: = True Argument für eine benutzerdefinierte Befehlsleiste zu erstellen:
Sub MenuBar_Create()
Application.CommandBars.Add Name:="My command bar", Temporary:=True
End Sub

Anzeigen einer benutzerdefinierten Befehlsleiste

Das folgende Beispiel erstellt und zeigt eine benutzerdefinierte Meine Custom Bar Menüleiste, und klicken Sie dann die integrierte Menüleiste ersetzt:
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

Löschen einer benutzerdefinierten Befehlsleiste

Im folgenden Codebeispiel wird die benutzerdefinierte Menüleiste, die gelöscht. mit dem Namen Sonder-AfA:
Sub MenuBar_Delete()
   CommandBars("Custom1").Delete
End Sub

Ausblenden einer Befehlsleiste

Im folgenden Codebeispiel wird die integrierte entfernt. Diagramm Menüleiste aus der Liste der verfügbaren Menü-:
Sub MenuBar_Display()
   CommandBars("Chart").Enabled = False
End Sub

Anzeigen einer Befehlsleiste

Im folgenden Codebeispiel wird die integrierte hinzugefügt Diagramm Menüleiste aus der Liste der verfügbaren Menü-:
Sub MenuBar_Display()
   CommandBars("Chart").Enabled = True
End Sub

Wiederherstellen einer integrierten Befehlsleiste

Die Standard-Steuerelemente (für beide Menüs setzt eine Menüleiste wiederherstellen und Menüelemente). Im folgenden Codebeispiel wird die integrierte wiederhergestellt. Diagramm Menüleiste:
Sub MenuBar_Restore()
   CommandBars("Chart").Reset
End Sub
Hinweis Sie können nur integrierten Menüleisten zurücksetzen. Ein benutzerdefiniertes kann nicht zurückgesetzt werden. Menüleiste.

Menüs

Die Standard-Steuerelemente (für beide Menüs setzt eine Menüleiste wiederherstellen und Menüelemente). Im folgenden Codebeispiel wird die integrierte wiederhergestellt. Diagramm Menüleiste:

Sub MenuBar_Restore()
   CommandBars("Chart").Reset
End Sub
Hinweis Sie können nur integrierten Menüleisten zurücksetzen. Ein benutzerdefiniertes kann nicht zurückgesetzt werden. Menüleiste.

Fügen Sie ein benutzerdefiniertes Menü-Steuerelement zu einer Befehlsleiste

Der folgende Beispielcode fügt den Namen eines Menüs, die Sie hinzufügen programmgesteuert die Arbeitsblatt Menüleiste. Z. B. das Code wird der Name hinzugefügt. Neues Menü um die auf der Arbeitsblatt Menüleiste.

Hinweis Sie können diesem Menü einen beliebigen Namen geben, den Sie möchten.
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

Ein Menüsteuerelement auf einer Befehlsleiste deaktivieren

Ein Menu-Steuerelement, das deaktiviert ist abgeblendet und ist nicht auf einer Befehlsleiste verfügbar. Das folgende Beispiel deaktiviert die Neue Menü Menü:
Sub Menu_Disable()
   CommandBars("Worksheet menu bar").Controls("New &Menu").Enabled = False
End Sub

Ein Menüsteuerelement auf einer Befehlsleiste aktivieren

Im folgenden Beispielcode ermöglicht das neue Menü, das Sie in deaktiviert die "deaktivieren Sie ein Menu-Steuerelement auf einer Befehlsleisten"Abschnitt:
Sub Menu_Disable()
   CommandBars("Worksheet menu bar").Controls("New &Menu").Enabled = True
End Sub

Löschen Sie ein Menu-Steuerelement auf einer Befehlsleiste

Der folgende code löscht die Neues MenüMenü, das Sie in "Ein benutzerdefiniertes Menü-Steuerelement auf einer Befehlsleiste hinzufügen" erstellt Abschnitt aus der Arbeitsblatt Menüleiste:
Sub Menu_Delete()
   CommandBars("Worksheet menu bar").Controls("New &Menu").Delete
End Sub

Ein Menüsteuerelement auf einer Befehlsleiste wiederherstellen

Im folgenden Codebeispiel wird die integrierte wiederhergestellt. Diagramm Menüleiste auf die Arbeitsblatt Menüleiste:
Sub Menu_Restore()
Dim myMnu As Object
   Set myMnu = CommandBars("Chart")
   myMnu.Reset
End Sub

Befehle

Änderungen, die an einen Befehl abhängig ist. auf den Steuerelementtyp. Im Allgemeinen Schaltflächen sind entweder aktiviert oder ausgeblendet werden. Bearbeiten Felder, Dropdown Listenfelder und Kombinationsfelder sind vielseitiger, Sie können Hinzufügen oder Löschen von Elementen aus der Liste. Darüber hinaus können Sie die Aktion bestimmen. erfolgt durch den Wert der Elemente, denen Sie ausgewählt haben die Liste. Sie können die Aktion eines Steuerelements zu einer integrierten Funktion oder zu ändern. eine benutzerdefinierte Funktion.

Die folgende Tabelle listet die gängigsten Eigenschaften eines Steuerelements und die Methoden zum Ändern des Status der Aktion, oder der Inhalt eines Steuerelements:
Tabelle minimierenTabelle vergrößern
Eigenschaft oder MethodeZweck
HinzufügenFügt den Befehl an einer Befehlsleiste hinzu.
AddItemFügt ein Element in den Dropdown-Listenteil eine Dropdown-Liste im Listenfeld oder ein Kombinationsfeld.
FormatvorlageGibt an, ob die Oberfläche der Schaltfläche ein Symbol anzeigt oder Beschriftung.
OnActionGibt an, welche Prozedur ausgeführt, wenn der Benutzer ändert die der Wert des Steuerelements.
SichtbarGibt an, ob das Steuerelement sichtbar ist oder ausgeblendet.

Weitere Informationen zu Menüs in Excel 2003 und in Excel 2002, gehen Sie folgendermaßen vor:
  1. Visual Basic-Skript-Editor zu starten.
  2. Auf der Hilfe Menü, klicken Sie auf Microsoft Visual Basic Hilfe.
  3. In der Hilfe durchsuchen Geben Sie im FeldMenüs, und drücken Sie dann die EINGABETASTE.
  4. Klicken Sie auf Hinzufügen und Verwalten von Menüleisten und Menüelementen (Office).

Ein Menu-Steuerelement eine Trennlinie hinzufügen

Der folgende Beispielcode fügt eine Trennlinie vor dem Befehl Tabelle auf der Einfügen Menü:
Sub menuItem_AddSeparator()
   CommandBars("Worksheet menu bar").Controls("Insert") _
   .Controls("Worksheet").BeginGroup = True
End Sub
Hinweis Um eine Trennlinie zu entfernen, die BeginGroup -Eigenschaft auf Falsefestgelegt.

Erstellen Sie ein benutzerdefiniertes Steuerelement in einem Menü

Im folgenden Codebeispiel erstellt einen neuen Befehl mit dem Namen Sonder-AfA auf der Tools Menü mit den Arbeitsblatt Menüleiste, und klicken Sie dann das Code_Custom1 -Makro ausgeführt, wenn Sie klicken Sonder-AfA:
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

Setzen Sie ein Häkchen neben einem Steuerelement

Der folgende Beispielcode setzt ein Häkchen neben dem Befehl Sonder-AfA , wenn es nicht ausgewählt ist, und klicken Sie dann das Häkchen entfernt, wenn der Befehl Custom1 markiert:
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

Deaktivieren Sie ein Steuerelement auf einer Befehlsleiste

Im folgenden Codebeispiel wird der Sonder-AfA -Befehl, die Sie erstellt deaktiviert die Tools im Menü Abschnitt "Erstellen Sie ein benutzerdefiniertes Steuerelement in einem Menü":
Sub MenuItem_Disable()
Dim myCmd as Object
   Set myCmd = CommandBars("Worksheet menu bar").Controls("Tools")
   myCmd.Controls("Custom1").Enabled = False
End Sub

Ein Steuerelement auf einer Befehlsleiste aktivieren

Im folgenden Beispielcode kann Sonder-AfA -Befehl, die in deaktiviert die "deaktivieren Sie ein Steuerelement auf einer Befehlsleisten"Abschnitt:
Sub MenuItem_Enable()
Dim myCmd as Object
   Set myCmd = CommandBars("Worksheet menu bar").Controls("Tools")
   myCmd.Controls("Custom1").Enabled = True
End Sub

Löschen Sie ein Steuerelement in einem Menü

Im folgenden Codebeispiel löscht die SpeichernBefehl auf der Datei Menü:
Sub menuItem_Delete()
Dim myCmd As Object
   Set myCmd = CommandBars("Worksheet menu bar").Controls("File")
   myCmd.Controls("Save").Delete
End Sub

Ein integriertes Steuerelement in einem Menü wiederherstellen

Wenn Sie ein Steuerelement in einem Menü wiederherstellen möchten, benötigen Sie die Anzahl der Kennung (ID) für das Steuerelement. Bestimmung die ID-Nummer finden Sie auf der Abschnitt "Eine ID für ein Steuerelement der Befehlsleiste zurück". Das folgende Beispiel löscht und stellt dann die Speichern Befehl, den Sie, in gelöscht der Abschnitt "Ein Steuerelement in einem Menü löschen":
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

Untermenüs

Untermenüs auf der Seite des übergeordneten Menüs angezeigt werden, klicken Sie auf ein Befehl. Ein Befehl ein Untermenü Steuerelement hat einen kleinen schwarzen Pfeil, die befindet sich am rechten Ende der Befehlsname.

Hinzufügen eines Untermenüs

Der folgende Beispielcode fügt ein neues Untermenü mit dem Namen NewSub um die Tools im Menü auf der Arbeitsblatt Menüleiste:
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

Hinzufügen eines Befehls zu einem Untermenü

Im folgenden Codebeispiel wird einen neuen Befehl mit dem Namen hinzugefügt. SubItem1 um die NewSub Untermenü, und klicken Sie dann das Code_SubItem1 -Makro ausgeführt, wenn Sie klicken 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

Deaktivieren Sie ein Steuerelement in einem Untermenü

Im folgenden Codebeispiel deaktiviert den gleichen Unterelement -Befehl, den Sie in "Einen Befehl ein Untermenü hinzufügen" erstellt Abschnitt:

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


Das folgende Beispiel aktiviert den gleichen SubItem-Befehl:
Sub SubMenu_DisableItem()
   CommandBars("Worksheet menu bar").Controls("Tools") _
   .Controls("NewSub").Controls("SubItem1").Enabled = True
End Sub

Löschen eines Befehls in einem Untermenü

Das folgende Beispiel löscht den SubItem1 -Befehl, die Sie auf der NewSub Untermenü im Abschnitt "Hinzufügen eines Befehls zu einem Untermenü":
Sub SubMenu_DeleteItem()
   CommandBars("Worksheet menu bar").Controls("Tools") _
   .Controls("NewSub").Controls("SubItem1").Delete
End Sub

Deaktivieren eines Steuerelements Untermenü

Im folgenden Beispielcode wird deaktiviert die NewSubUntermenüs, die Sie auf der Tools Menü in der "Hinzufügen einer Untermenü"Abschnitt:
Sub SubMenu_DisableSub()
   CommandBars("Worksheet menu bar").Controls("Tools") _
   .Controls("NewSub").Enabled = False
End Sub
Hinweis Um das deaktivierte Steuerelement zu aktivieren, legen Sie die Enabled -Eigenschaft auf True.

Löschen eines Steuerelements Untermenü

Im folgenden Codebeispiel löscht die NewSubUntermenüs, die Sie auf der Tools Menü in der "Hinzufügen einer Untermenü"Abschnitt:
Sub SubMenu_DeleteSub()
   CommandBars("Worksheet menu bar").Controls("Tools") _
   .Controls("NewSub").Delete
End Sub

Kontextmenü Menüleisten

Kontextmenüs sind bewegliche Befehlsleisten, die angezeigt wird die Benutzer mit der rechten Maustaste ein Objekt. Eine Menüleiste Kontextmenü kann das gleiche Steuerelement enthalten. Typen wie eine Befehlsleiste und die Steuerelemente verhalten sich wie die Steuerelemente auf einer Befehlsleiste. Sie können nicht erstellen oder Ändern von Kontextmenüs aus des Programms Schnittstelle in den meisten Programmen. Aus diesem Grund müssen Sie erstellen und ändern die Verknüpfung Menüs zur Laufzeit.

Weitere Informationen zu Kontextmenüs in Excel 2002 und Excel 2003 gehen Sie folgendermaßen vor:
  1. Visual Basic-Skript-Editor zu starten.
  2. Auf der Hilfe Menü, klicken Sie auf Microsoft Visual Basic Hilfe.
  3. In der Hilfe durchsuchen Geben Sie im FeldKontextmenü, und drücken Sie dann die EINGABETASTE.
  4. Klicken Sie auf Hinzufügen und Anzeigen von Tastenkombinationen Menüs.

Erstellen einer neuen Kontextmenüleiste

Der folgende Beispielcode erstellt eine neue Verknüpfung Menüleiste mit dem Namen 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

Hinweis Die Kontextmenüleiste leer angezeigt da keine Steuerelemente (Menü " Es wurden Elemente oder Untermenüs) hinzugefügt.

Kontextmenüs

Bei Verwendung von die rechten Maustaste auf Menü Symbolleisten angezeigt werden Klicken Sie auf ein bestimmtes Excel-Objekt. Excel verfügt über viele Menü-Symbolleisten für die ein Vielzahl von Menüs zur Verfügung. Sie können auch benutzerdefinierte Verknüpfung Menüleisten erstellen. und die integrierten Menüleisten anpassen.

Erstellen eines Befehls in einer Menüleiste Kontextmenü

Der folgende Beispielcode erstellt einen neuen Menübefehl, die mit dem Namen Element1 auf der myShortcutBar Kontextmenüleiste und it das Code_Item1 -Makro ausgeführt, wenn Sie klicken 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

Deaktivieren Sie ein Steuerelement auf einer Menüleiste Kontextmenü

Im folgenden Codebeispiel deaktiviert den Item1 -Befehl, den Sie unter "erstellen ein Befehls auf eine Verknüpfung erstellt "Menüabschnitt:
Sub Shortcut_DisableItem()
   Set myBar = CommandBars("myShortcutBar")
   myBar.Controls("Item1").Enabled = False
   myBar.ShowPopup 200,200
End Sub
Hinweis Um das deaktivierte Element zu aktivieren, legen Sie die Enabled -Eigenschaft auf True.

Löschen eines Befehls in einer Menüleiste Kontextmenü

Im folgenden Codebeispiel löscht den Menübefehl mit dem Namen Element1 auf der myShortcutBar Kontextmenüleiste:
Sub Shortcut_DeleteItem()
   Set myBar = CommandBars("myShortcutBar")
   myBar.Controls("Item1").Delete
   myBar.ShowPopup 200,200
End Sub

Löschen Sie eine Menüleiste Kontextmenü

Die Kontextmenüleiste löschen entfernt alle Elemente. Sie können nicht Wiederherstellen einer gelöschten benutzerdefinierten Menüleiste. Um sie wiederherzustellen, müssen Sie es und alle wiederherstellen. die Menüelemente und Untermenüs.

Im folgenden Beispielcode wird gelöscht Das Dialogfeld myShortCutBar Kontextmenüleiste, die in der Abschnitt "Erstellen eines Befehls in einer Menüleiste Kontextmenü":
Sub Shortcut_DeleteShortCutBar()
   CommandBars("MyShortCutBar").Delete
End Sub

Wiederherstellen ein Befehls auf einer integrierte Kontextmenüleiste

Im folgenden Beispielcode wird wiederhergestellt Standardbefehle auf der Arbeitsblatt Zelle Kontextmenüleiste:
Sub Shortcut_RestoreItem()
   CommandBars("Cell").Reset
End Sub

Untermenüs in Kontextmenüs

Sie können Untermenüs auf Verknüpfung Menüleisten erstellen. Untermenüs angezeigt zu werden. die Seite des übergeordneten Menüs Wenn Sie ein Steuerelement klicken. Ein Befehl ein Untermenü Steuerelement hat einen kleinen, schwarzen Pfeil, die sich rechts neben der der Name.

Erstellen Sie ein neues Untermenü auf eine Menüleiste Kontextmenü

Das folgende Beispiel fügt ein neues Untermenü mit dem Namen NewSub auf dem Arbeitsblatt Zelle Kontextmenü:
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
Hinweis Das Untermenü ist leer, da keine Menüelemente hinzugefügt wurden Es ist.

Erstellen Sie ein Steuerelement in einem Untermenü, das befindet auf einer Menüleiste Kontextmenü

Das folgende Makro fügt den SubItem1 -Befehl in das Untermenü NewSub Sie erstellt auf der Zelle Klicken Sie im Kontextmenü und klicken Sie dann das Code_SubItem1 -Makro ausgeführt, wenn Sie klicken 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

Deaktivieren Sie ein Untermenü in einem Kontextmenü-Steuerelement

Im folgenden Codebeispiel deaktiviert den Befehl SubItem1 auf der NewSub Untermenü:
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
Hinweis Um ein deaktiviertes Element zu aktivieren, legen Sie die Enabled -Eigenschaft auf True.

Löschen Sie ein Untermenü in einem Kontextmenü-Steuerelement

Das folgende Beispiel löscht den SubItem1 -Befehl auf der NewSub Untermenü:
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

Deaktivieren eines Steuerelements Untermenü in einem Kontextmenü

Im folgenden Beispielcode wird deaktiviert die NewSubund dann auf die Zelle Kontextmenüleiste:
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
Hinweis Um ein deaktiviertes Element zu aktivieren, legen Sie die Enabled -Eigenschaft auf True.

Löschen eines Steuerelements Untermenü in einem Kontextmenü

Im folgenden Codebeispiel löscht die NewSubUntermenüs, die Sie auf der Zelle Kontextmenüleiste:
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

Finden Sie weitere Informationen

Die folgenden Ressourcen sind für Weitere Informationen zur Verfügung. über das Anpassen von Menüs und Menüleisten in Excel.

Objektkatalog

Der Objektkatalog enthält eine vollständige Liste aller Eigenschaften und die Methoden für einen bestimmten Befehl. Um diese Informationen zu finden, wechseln Sie zu Visual Basic-Editor (drücken Sie ALT + F11), klicken Sie auf Objektkatalogauf der Ansicht Menü (oder durch Drücken von F2), geben Sie den Namen des Steuerelements Klicken Sie im Dialogfeld Suche das Feld, und klicken Sie dann die EINGABETASTE drücken oder auf Suche.

Microsoft Knowledge Base

Der Microsoft Knowledge Base ist eine primäre Microsoft-Produkt Informationsquelle für die Microsoft Product Support Services Profis. Der Microsoft Knowledge Base steht auch an Microsoft Kunden. Diese umfassende Datenbank enthält detaillierte Artikel mit technische Informationen zu Microsoft-Produkten, dokumentierte behoben werden Dokumentationsfehler sowie Antworten auf häufig gestellte technische Unterstützung Fragen.

Um in der Microsoft Knowledge Base zu verbinden, finden Sie auf der folgende Microsoft-Website, und folgen Sie dann die Anweisungen auf die Seite:
http://support.Microsoft.com

Eigenschaften

Artikel-ID: 830502 - Geändert am: Dienstag, 30. Oktober 2012 - Version: 6.0
Die Informationen in diesem Artikel beziehen sich auf:
  • Microsoft Excel 2002 Standard Edition
  • Microsoft Excel 2000 Standard Edition
Keywords: 
kbhowtomaster kbmt KB830502 KbMtde
Maschinell übersetzter Artikel
Wichtig: Dieser Artikel wurde maschinell und nicht von einem Menschen übersetzt. Die Microsoft Knowledge Base ist sehr umfangreich und ihre Inhalte werden ständig ergänzt beziehungsweise überarbeitet. Um Ihnen dennoch alle Inhalte auf Deutsch anbieten zu können, werden viele Artikel nicht von Menschen, sondern von Übersetzungsprogrammen übersetzt, die kontinuierlich optimiert werden. Doch noch sind maschinell übersetzte Texte in der Regel nicht perfekt, insbesondere hinsichtlich Grammatik und des Einsatzes von Fremdwörtern sowie Fachbegriffen. Microsoft übernimmt keine Gewähr für die sprachliche Qualität oder die technische Richtigkeit der Übersetzungen und ist nicht für Probleme haftbar, die direkt oder indirekt durch Übersetzungsfehler oder die Verwendung der übersetzten Inhalte durch Kunden entstehen könnten.
Den englischen Originalartikel können Sie über folgenden Link abrufen: 830502
Microsoft stellt Ihnen die in der Knowledge Base angebotenen Artikel und Informationen als Service-Leistung zur Verfügung. Microsoft übernimmt keinerlei Gewährleistung dafür, dass die angebotenen Artikel und Informationen auch in Ihrer Einsatzumgebung die erwünschten Ergebnisse erzielen. Die Entscheidung darüber, ob und in welcher Form Sie die angebotenen Artikel und Informationen nutzen, liegt daher allein bei Ihnen. Mit Ausnahme der gesetzlichen Haftung für Vorsatz ist jede Haftung von Microsoft im Zusammenhang mit Ihrer Nutzung dieser Artikel oder Informationen ausgeschlossen.

Ihr Feedback an uns

 

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