Office: Menüleiste über VBA

Helfe beim Thema Menüleiste über VBA in Microsoft Excel Hilfe um das Problem gemeinsam zu lösen; Moin, seit Excel97 ist die Menüleiste ein Teil der Symbolleisten und wird in dieser Aufzählung geführt (im englischen: CommandBars). Eine... Dieses Thema im Forum "Microsoft Excel Hilfe" wurde erstellt von jinx, 18. September 2001.

  1. Menüleiste über VBA


    Moin,

    seit Excel97 ist die Menüleiste ein Teil der Symbolleisten und wird in dieser Aufzählung geführt (im englischen: CommandBars). Eine Beschreibung, wie ohne VBA Veränderungen durchgeführt werden können, meine ich im Beitrag Anlegen, Ausführen und Anbinden von Makros gegeben zu haben. Dieses Thema wird sich ausschließlich um Beiträge per VBA zur Menüleiste widmen.

    Wenn die Menüleiste "verschwunden" ist, hilft leider das Vorgehen mit Wiederherstellen aus dem Anpassen-Menü der Symbolleisten nicht; dies muß nach meinem Kenntnisstand per VBA erfolgen. Die folgenden Makro sollten dabei zum gewünschten Erfolg führen - für den Fall, dass die Menüleiste gerade noch "ansichtig" ist, wurden die entsprechenden Makros zum Ausblenden ebenfalls angefügt.

    Code:
    Wie in den ersten Codings bereits angeführt, benötigen wir zur Ansprache der Menüleiste entweder deren englischen Namen oder den Index, im Falle der Menüleiste einfach (steht ja oben), für die anderen Symbolleisten kann ein Vorgehen wie folgend helfen, welches die Angaben auf eine Tabelle Ausgabe schreibt:

    Code:
    Tja, und da hätten wir dann gerne wieder ein Problem, denn die deutschen Angaben sind ja nett, aber wie setze ich es für den Kollegen mit einer anderen Landessprache um? Die Index-Nummer für einen Eintrag kann sich verschoben haben - wenn sich z.B. ein AddIn "eingenistet" hat, welches die normale Reihenfolge durcheinander gebracht hat. Diese Vorgehensweise ist dann nicht der Weisheit letzter Schluß...

    Eine Liste mit den ID´s und den deutschen Namen können wir uns auf die folgende Art anzeigen lassen:

    Code:
    Für das zweite Vorgehen setzen wir die Methode FindControl und die ID des Menüs ein:

    Code:
     
  2. Moin,


    dann wollen wir uns doch einmal daran machen, die ganzen Befehle eines Menüpunktes "außer Gefecht" zu setzen. Dazu bedienen wir uns einer Schleife, die alle Befehle innerhalb des Punktes durchläuft. Als Beispiel soll dafür das Menü Extras herhalten:

    Code:
    Der nächste Schritt sollte dann sein, einen einzelnen Menüpunkt aus der Auswahl herauszunehmen. Hier wurde aus dem Hilfe-Menü der Punkt Info herausgegriffen:

    Code:
    War das vorgehen eben über eine Schleife, so kann dies auch direkt über die Angabe der ID erfolgen. Leider hatte ich beim Testen da so einige Probleme (Excel2002 wurde eingesetzt) und konnte nur mit 5-stelligen IDs ohne Laufzeitfehler arbeiten. Daher wird mit dem Menüpunkt Blatt aus dem Menü Format auch ein solcher vorgestellt:

    Code:
     
    Zuletzt von einem Moderator bearbeitet: 12. Januar 2021
  3. Moin,

    in diesem Abschnitt soll es um die Erweiterung eines Menüpunktes gehen - das Beispiel erstellt den neuen Menüpunkt Markieren Zellen mit ,,, am unteren Ende des Bearbeiten-Menüs mit einigen weiteren Unterpunkten. Die aufgerufenen Makros sind darunter angegeben.

    Code:
     
    Zuletzt von einem Moderator bearbeitet: 12. Januar 2021
  4. Menüleiste über VBA

    Moin,

    dann wollen wir uns mal dem Erstellen eines eigenen Menüs widmen *wink.gif*

    Zuerst wird ein eigener Menüpunkt angelegt, der auch nur einen Unterpunkt beherbergt:

    Code:
     
  5. Moin,

    in diesem Teilabschnitt soll die Kenntlichmachung des Zustandes durch die Verwendung von Häkchen dargestellt werden. Dazu wird ein eigener Menüpunkt angelegt (Analyse), der vor der Hilfe eingestellt werden soll.

    Code:
    Zum Zurücksetzen aller Häkchen kann das folgende Makro genutzt werden:

    Code:
     
  6. OfficeUser Neuer User
    Moin,

    bisher wurden die Menüs durch die direkte Eingabe von allen Punkten erzeugt. Dies heißt dann aber auch, dass ein Umstellen/Umschreiben von Menüpunkten immer mit allen Angaben erfolgen muss. Dies geht auch einfacher, wenn man die Angaben zu dem Menü in tabellarischer Form ablegt und dann abarbeitet.

    Dazu mag die folgende Tabelle als Grundlage dienen (Beispiel ist aus der Gold Bible 2000 von John Walkenbach):
     ABCDE
    1LevelCaptionPosition/MacroDividerFaceID
    21&MyMenu10  
    32Wi&zards   
    43Wizard Number &1DummyMacro 128
    53Wizard Number &2DummyMacro 79
    63Wizard Number &3DummyMacroWAHR51
    72&Tools   
    83Tools Number &1DummyMacro 167
    93Tools Number &2DummyMacro 5
    102&Printing   
    113Printing Number &1DummyMacro 190
    123Printing Number &2DummyMacro 53
    133Printing Number &3DummyMacroWAHR82
    142&Charts   
    153Charts Number &1DummyMacro 192
    163Charts Number &1DummyMacro 250
    172&MinimizeDummyMacroWAHR311
    182Ma&ximizeDummyMacro 394
    192&Help WAHR 
    203&Help ContentsDummyMacro 228
    213&More HelpDummyMacro 81
    223&AboutDummyMacroWAHR316
    Spalte A Level legt fest, um welche Stufe des Menüs es sich handelt: 1 entspricht dem Punkt in der Menüleiste, 2 einem Menüpunkt und 3 einem Untermenüpunkt.
    Spalte B Caption legt den Namen des Menüs fest.
    Spalte C Position/Macro gibt für Level 1 die Position an, an der sich das Menü befinden soll; für Level 2 oder 3 wird hier der Name des auszuführenden Makros bei Wahl angegeben. Wenn ein Level 2 Menü mehrere Unterpunkte hat, muss dort kein Makro angegeben werden.
    Spalte D Divider legt fest, ob ein Trennstrich zwischen den Menüpunkten eingefügt werden soll oder nicht.
    Spalte E FaceID wurde durch die Erzeugung einer Zufallszahl gespeist. Dort wird die Nummer des Symbols angegeben, welches vor dem Menüpunkt eingesetzt werden soll.

    Code:
     
    Zuletzt von einem Moderator bearbeitet: 12. Januar 2021
    OfficeUser, 18. November 2001
    #6
    1 Person gefällt das.
Thema:

Menüleiste über VBA

Die Seite wird geladen...
  1. Menüleiste über VBA - Similar Threads - Menüleiste VBA

  2. Menüleisten deaktivieren-nur bei einem Workbook!

    in Microsoft Excel Hilfe
    Menüleisten deaktivieren-nur bei einem Workbook!: Hallo Zusammen, ich versuche gerade bei einen Workbook, sobald es aktiviert wird, alle Menüleisten auszublenden. Problem 1: Menüband (oben) und Blattregister (unten) wird ausgeblendet -...
  3. Menüleiste ausblenden

    in Microsoft Access Hilfe
    Menüleiste ausblenden: Hallo allerseits, in ACC 2007 habe ich die Menüleiste ausgeblendet mit: DoCmd.ShowToolbar "Ribbon", acToolbarNo Allerdings funktioniert das in 2016 nicht mehr. Wie setze ich es jetzt um? 360428
  4. Menüleiste vom VBA-Editor weg

    in Microsoft Access Hilfe
    Menüleiste vom VBA-Editor weg: Hallo zusammen, der VBA-Editor benimmt sich etwas merkwürdig. Access läuft, ich habe gerade ein Formular in der Entwurfsansicht offen. Mittagspause: Ich sperre meine Windows-Sitzung mit...
  5. Aufgaben über die Menüleiste aufrufen

    in Microsoft Teams Hilfe
    Aufgaben über die Menüleiste aufrufen: Hallo, wir nutzen Teams als Schule. Ich habe allerdings für die Klassen nicht den Teamtyp "Kurs" gewählt, sondern "andere", da einige Funktionen (z.B. Noten) für uns nicht brauchbar waren. Die...
  6. Kopieren, Ausschneiden, Einfügen und Format übertragen auch in der Menüleiste sperren

    in Microsoft Excel Hilfe
    Kopieren, Ausschneiden, Einfügen und Format übertragen auch in der Menüleiste sperren: Hallo Excel Expertinnen und Experten! Ich habe mir aus dem Internet die VBA-Programmierung für Kopieren und Einfügen in einer teilweise gesperrten Excel-Arbeitsmappe rausgesucht. Das Makro...
  7. Menüleiste verschwunden

    in Microsoft Outlook Hilfe
    Menüleiste verschwunden: Hallo an alle Experten! Wie kann ich bei Outlook 2002 die Menüleiste ("Datei", "Senden und Empfangen"-Button, etc.) wieder aktivieren? Rechte Maustaste führt ins Leere... Mein Bildschirm...
  8. Menüleiste Excel 2010 ändern

    in Microsoft Excel Hilfe
    Menüleiste Excel 2010 ändern: Hallo, ich benutze seit kurzem Excel 2010 und kann mich nicht unbedingt mit der neuen Menüleiste oben anfreunden. Gibt es eine Möglichkeit die Leiste im Stil von z.B. Excel 2003 zu verändern?
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden