Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Button im eigenen Menüband

Forumthread: Button im eigenen Menüband

Button im eigenen Menüband
31.01.2019 07:31:44
Erwin
Schönen guten Morgen,
im Laufe der Jahre habe ich mir mit VBA ein eigenes Menü zusammengebastelt; manchmal mehr schlecht als recht:).
Jetzt habe ich festgestellt, dass ich einen Button weit öfter benötige als andere und wollte diesen direkt auf meinem Menüband unterbringen; leider klappt es nicht und ich habe im Moment keine Idee wo der Fehler liegt, vermute aber hier irgendwo.












...............
Die Datei habe ich hochgeladen, damit man den Zusammenhang sehen kann:
https://www.herber.de/bbs/user/127311.xlsm
Ziel ist es mit dem OK Button im Menüband, den "Alle O.K." Button von DWH aufbereiten auszulösen.
Vielen Dank schon mal - Erwin
Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Sorry für den grauen Kasten
31.01.2019 07:34:30
Erwin
Sorry, anscheinend kann der Inhalt vom Custom UI Editor hier nicht dargestellt werden, was m. E. an den liegt.
Bitte Exceldatei ansehen.
Danke
AW: Sorry für den grauen Kasten
31.01.2019 12:22:31
Nepumuk
Hallo Erwin,
tut mir leid, aber ich habe es nicht verstanden. Versuch es mal wie einem Fünfjährigen zu erklären.
Gruß
Nepumuk
Eigenes Menüband
31.01.2019 12:38:49
Erwin
Hallo Nepumuk,
in der hochgeladenen Datei sind die Grundlagen für ein eigenes Menü enthalten (aus .xlsm mache ich .xlam) und benutze das ADD IN um wiederkehrende Tätigkeiten zu vereinfachen.
Bisher muss ich in meinem Menü auf DWH klicken, dann geht ein Dropdown auf, dort wähle ich "DWH_aufbereiten" aus und dann drücke ich "Alle O.K.", damit VBA läuft.
Das ist mir zuviel des Aufwandes.
Ich möchte, dass der "Alle O.K." Button direkt im Menüband zum anklicken erscheint.
In dem Custom UI Editor habe ich versucht, den Code anzupassen, damit der Button direkt in meinem Menüband erscheint, leider erfolglos; ich weis nicht, wo und wie das dort zu integrieren ist.
Ich hoffe, ich konnte es einigermaßen erklären.
Grüße - Erwin
Anzeige
AW: Sorry für den grauen Kasten
31.01.2019 13:00:03
Karl-Heinz
Hi Erwin,
so ganz verstanden habe ich es noch nicht, was Du möchtest, aber vielleicht so etwas:
Das OK-Menü durch einen einzelnen Button (large) ersetzen (Ausschnitt):

<!-- angezeigter Name im Register -->
 <tab id="tabExcelvorlage" label="*** Erwin's Leiste ***">
  <group id="grp_OK" label="Alles OK">
   <button id="M_1_0_Button_OK" label="DWH_aufbereiten" size="large" image="M_1_0_Button_OK"
    onAction="cmd_ribbon_liste_01" supertip="OKOKOKOKOK."/>
  </group>
 <group id="grp_DWH" label="Data Warehouse">

Außerdem hattest Du für OnAction die SUb cmd_ribbon_liste_01 angegeben, aber dort nicht die ID abgefangen, sondern in einer anderen Sub cmd_ribbon_liste_01_Button_OK.
Also entweder im Ribbon die OnAction-Sub auf onAction="cmd_ribbon_liste_01_Button_OK" anpassen oder in der Sub cmd_ribbon_liste_01 den Case für den Button ergänzen.
Case "M_1_0_Button_OK": Call M_1_0_DWH_aufbereiten
viele Grüße
Karl-Heinz
Anzeige
AW: Sorry für den grauen Kasten
31.01.2019 14:51:21
Erwin
Hallo ihr beiden Helfer,
vielen Dank, dass ihr euch mein Problem angesehen- und sicher auch gelöst habt.
Ich werde es heute Abend gleich noch testen, aber ich glaube, ich habe meinen Fehler schon erkannt.
Grüße - Erwin
;
Anzeige
Anzeige

Infobox / Tutorial

Button im eigenen Menüband


Schritt-für-Schritt-Anleitung

  1. Öffne den Custom UI Editor: Lade die Excel-Datei, die Du anpassen möchtest.

  2. Füge den XML-Code ein: Kopiere den folgenden XML-Code in den Custom UI Editor:

    <customui>
        <ribbon>
            <tabs>
                <tab id="tabExcelvorlage" label="*** Erwin's Leiste ***">
                    <group id="grp_OK" label="Alles OK">
                        <button id="M_1_0_Button_OK" label="DWH_aufbereiten" image="M_1_0_Button_OK" onaction="cmd_ribbon_liste_01_Button_OK" supertip="OKOKOKOKOK." size="large"/>
                    </group>
                </tab>
            </tabs>
        </ribbon>
    </customui>
  3. Anpassen der OnAction: Stelle sicher, dass die onAction-Eigenschaft auf die richtige Sub verweist, die den gewünschten Button ausführt, z.B. cmd_ribbon_liste_01_Button_OK.

  4. Speichern der Änderungen: Speichere die Datei im .xlsm-Format.

  5. Testen: Öffne die Datei in Excel und teste, ob der Button im Menüband angezeigt wird und die Funktion wie gewünscht ausführt.


Häufige Fehler und Lösungen

  • Button wird nicht angezeigt: Überprüfe, ob der XML-Code korrekt eingegeben wurde und keine Syntaxfehler vorhanden sind.

  • Falsche OnAction-Sub: Stelle sicher, dass die Sub, die Du in onAction angegeben hast, tatsächlich existiert und korrekt funktioniert.

  • Excel-Version: Diese Anleitung basiert auf Excel 2016 und höher. Ältere Versionen unterstützen möglicherweise nicht alle Funktionen.


Alternative Methoden

  • VBA zur Erstellung von Menüs nutzen: Statt des Custom UI Editors kannst Du auch VBA verwenden, um Menüs zu erstellen. Hier ein einfaches Beispiel:

    Sub CreateCustomMenu()
        Dim cb As CommandBar
        Set cb = Application.CommandBars.Add(Name:="MyCustomMenu", Position:=msoBarTop, Temporary:=True)
        cb.Controls.Add(Type:=msoControlButton, ID:=1, Before:=1).Caption = "DWH aufbereiten"
    End Sub
  • Add-Ins verwenden: Du kannst auch Add-Ins erstellen, die Deine Funktionen direkt in Excel zugänglich machen.


Praktische Beispiele

  • Beispiel für einen einfachen Button: Wenn Du einen Button zum Ausführen eines Makros benötigst, kannst Du den folgenden Code verwenden:

    Sub cmd_ribbon_liste_01_Button_OK()
        MsgBox "DWH wird aufbereitet!"
        ' Hier folgt der Code zur Datenaufbereitung
    End Sub
  • Erstellen eines Dropdown-Menüs: Du kannst auch Dropdown-Menüs im Menüband hinzufügen, um mehrere Optionen anzubieten.


Tipps für Profis

  • Verwende Icons: Gestalte Deine Buttons ansprechender, indem Du Icons hinzufügst. Dies verbessert die Benutzererfahrung.

  • Teste regelmäßig: Führe nach jeder Änderung Tests durch, um sicherzustellen, dass alles wie gewünscht funktioniert.

  • Dokumentation: Halte eine Dokumentation über die Änderungen im Menüband und die verwendeten Makros bereit, um leichter nachverfolgen zu können, was gemacht wurde.


FAQ: Häufige Fragen

1. Wie kann ich das Menüband zurücksetzen? Um das Menüband zurückzusetzen, gehe zu den Excel-Optionen und wähle die Option zum Zurücksetzen des Menübands.

2. Kann ich mehrere Buttons im Menüband hinzufügen? Ja, Du kannst mehrere Buttons hinzufügen, indem Du einfach weitere <button>-Tags im XML-Code einfügst.

3. Was tun, wenn der Button nicht funktioniert? Überprüfe den VBA-Code auf Fehler und stelle sicher, dass die OnAction-Sub korrekt definiert ist.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige