Einzelne Menüpunkte deaktivieren (ausblenden)

Hinweis: Dieses Makro funktioniert bis Excel 2003. Für die Version ab Excel 2007 finden Sie Programmier-Tipps zum Thema Menüband unter diesem Link.

Das Makro
Menu_ID_ermitteln gibt im Direktfernster die ID´s der einzelnen Menüpunkte aus, mit der das entsprechende Menü angesprochen werden kann.

Sub Menu_ID_ermitteln()
Dim Menüleiste As CommandBar
Dim i As Integer
Dim n As Integer

Set Menüleiste = CommandBars(1)
n = Menüleiste.Controls.Count
For i = 1 To n
Debug.Print Menüleiste.Controls(i).ID & _
" ---> " & Menüleiste.Controls(i).Caption
Next
End Sub


Die Ausgabe im Direktbereich sieht dann in etwa wie folgt aus:

30002 ---> &Datei
30003 ---> &Bearbeiten
30004 ---> &Ansicht
30005 ---> &Einfügen
30006 ---> Forma&t
30007 ---> E&xtras
30011 ---> Date&n
30083 ---> A&ktion
30009 ---> &Fenster
30010 ---> &?


Um einen Menüpunkt zu deaktivieren ändern Sie die ID-Nr. in die gewünschte
in dem im Direktbereich ausgegebene ID-Nr. ab. Dieser Menüpunkt wird nach Ausführung
des Makros 'ausblenden' deaktiviert.
Sub ausblenden()
Dim ctrl As CommandBarPopup
Set ctrl = Application.CommandBars.FindControl(ID:=30009) 'hier z. B. Fenster
If ctrl Is Nothing Then Else ctrl.Enabled = False
End Sub



Das Makro 'einblenden' aktiviert den gewünschten Menüpunkt wieder! Es ist entsprechend
wieder die gewünsche Menü-Id-Nr. anzugeben.
Sub einblenden()
Dim ctrl As CommandBarPopup
Set ctrl = Application.CommandBars.FindControl(ID:=30009) 'hier z. B. Fenster
If ctrl Is Nothing Then Else ctrl.Enabled = True
End Sub

 

Partnerlinks

Relevante Artikel

Wir benutzen Cookies
Ihre Zufriedenheit ist unser Ziel, deshalb verwenden wir Cookies. Mit diesen ermöglichen wir, dass unsere Webseite zuverlässig und sicher läuft, wir die Performance im Blick behalten und Sie besser ansprechen können. Cookies werden benötigt, damit technisch alles funktioniert und Sie auch externe Inhalte lesen können. Des Weiteren sammeln wir unter anderem Daten über aufgerufene Seiten, getätigte Käufe oder geklickte Buttons, um so unser Angebot an Sie zu Verbessern. Mehr über unsere verwendeten Dienste erfahren Sie unter „Weitere Informationen“. Mit Klick auf „Akzeptieren“ erklären Sie sich mit der Verwendung dieser Dienste einverstanden. Ihre Einwilligung können Sie jederzeit mit Wirkung auf die Zukunft widerrufen oder ändern.