Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

ID-Liste für Buttonfunktion

Forumthread: ID-Liste für Buttonfunktion

ID-Liste für Buttonfunktion
27.05.2004 10:36:33
Werner
Liebe Leute,
mit 'Set Menu1 = Menu1.Controls.Add(Type:=msoControlButton, ID:=3) usw. erzeuge ich eine Symbolleiste mit Buttons.
Mit 'ID:=3' wird die F u n k t i o n des Buttons bestimmt (z.B. ist ID3 die Funktion 'Speichern').
Ich suche nun verzweifelt eine Auflistung aller IDs (Bitte nicht verwechseln mit der Liste für 'Face-ID' - mit der wird ja nur das Aussehen, nicht aber die Funktion bestimmt).
Weiß jemand, ob und wo ich sowas finden kann?
Grüße
Werner
Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: ID-Liste für Buttonfunktion
27.05.2004 10:54:12
Ben

Sub IDs_auflisten()
Dim oBar As CommandBar
Dim oCtr As CommandBarControl
Dim oBtn As CommandBarButton
Dim iRow As Integer
Cells(1, 1).Value = "Befehlsleiste"
Cells(1, 2).Value = "Lokaler Name"
Cells(1, 3).Value = "Integriert?"
Cells(1, 4).Value = "Aktiviert?"
Cells(1, 5).Value = "Sichtbar?"
Cells(1, 6).Value = "Schaltfläche"
Cells(1, 7).Value = "ID"
Cells(1, 8).Value = "Index"
Cells(1, 9).Value = "Integriert?"
Cells(1, 10).Value = "Aktiviert?"
Cells(1, 11).Value = "Sichtbar?"
With Range(Cells(1, 1), Cells(1, 11))
.HorizontalAlignment = xlCenter
.Font.Bold = True
.Interior.ColorIndex = 40
End With
Cells(2, 2).Select
ActiveWindow.FreezePanes = True
iRow = 1
For Each oBar In CommandBars
iRow = iRow + 1
Cells(iRow, 1).Value = oBar.Name
Cells(iRow, 2).Value = oBar.NameLocal
Cells(iRow, 3).Value = oBar.BuiltIn
Cells(iRow, 4).Value = oBar.Enabled
Cells(iRow, 5).Value = oBar.Visible
Cells(iRow + 1, 1).Value = "(ID = " & cStr(oBar.ID) _
& ",  Index = " & cStr(oBar.Index) & ")"
For Each oCtr In oBar.Controls
Cells(iRow, 6).Value = oCtr.Caption
Cells(iRow, 7).Value = oCtr.ID
Cells(iRow, 8).Value = oCtr.Index
Cells(iRow, 9).Value = oCtr.BuiltIn
Cells(iRow, 10).Value = oCtr.Enabled
Cells(iRow, 11).Value = oCtr.Visible
iRow = iRow + 1
Next oCtr
Next oBar
Columns.AutoFit
End Sub

Anzeige
AW: ID-Liste für Buttonfunktion
27.05.2004 11:06:56
Werner
Hallo Ben, genial! Vielen Dank!
;
Anzeige

Infobox / Tutorial

ID-Liste für Buttonfunktion in Excel


Schritt-für-Schritt-Anleitung

Um eine ID-Liste für Buttons in Excel zu erstellen, kannst Du das folgende VBA-Skript verwenden. Dieses Skript listet die IDs der Schaltflächen in der Befehlsleiste auf:

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu öffnen.
  2. Klicke auf Einfügen und wähle Modul.
  3. Kopiere und füge den folgenden Code in das Modul ein:
Sub IDs_auflisten()
    Dim oBar As CommandBar
    Dim oCtr As CommandBarControl
    Dim iRow As Integer
    Cells(1, 1).Value = "Befehlsleiste"
    Cells(1, 2).Value = "Lokaler Name"
    Cells(1, 3).Value = "Integriert?"
    Cells(1, 4).Value = "Aktiviert?"
    Cells(1, 5).Value = "Sichtbar?"
    Cells(1, 6).Value = "Schaltfläche"
    Cells(1, 7).Value = "ID"
    Cells(1, 8).Value = "Index"
    With Range(Cells(1, 1), Cells(1, 8))
        .HorizontalAlignment = xlCenter
        .Font.Bold = True
        .Interior.ColorIndex = 40
    End With
    iRow = 1
    For Each oBar In CommandBars
        iRow = iRow + 1
        Cells(iRow, 1).Value = oBar.Name
        Cells(iRow, 2).Value = oBar.NameLocal
        Cells(iRow, 3).Value = oBar.BuiltIn
        Cells(iRow, 4).Value = oBar.Enabled
        Cells(iRow, 5).Value = oBar.Visible
        For Each oCtr In oBar.Controls
            Cells(iRow, 6).Value = oCtr.Caption
            Cells(iRow, 7).Value = oCtr.ID
            Cells(iRow, 8).Value = oCtr.Index
            iRow = iRow + 1
        Next oCtr
    Next oBar
    Columns.AutoFit
End Sub
  1. Schließe den VBA-Editor und führe das Makro aus, indem Du ALT + F8 drückst und das Makro IDs_auflisten auswählst.

Das Skript erstellt eine Tabelle mit den Namen der Befehlsleisten und ihren zugehörigen IDs, was Dir hilft, die msocontrolbutton id list zu erstellen.


Häufige Fehler und Lösungen

  • Fehler: "Komponente nicht gefunden"

    • Lösung: Stelle sicher, dass Du die richtigen Referenzen in Excel aktiviert hast. Gehe zu Extras > Verweise und überprüfe, ob die benötigten Bibliotheken markiert sind.
  • Fehler: Leere Tabelle

    • Lösung: Überprüfe, ob Du das Makro in einer Arbeitsmappe ausführst, die Befehlsleisten enthält. Das Skript listet nur Schaltflächen auf, wenn Befehlsleisten vorhanden sind.

Alternative Methoden

Wenn Du keine VBA-Makros nutzen möchtest, kannst Du auch die Excel-Optionen nutzen:

  1. Gehe zu Datei > Optionen.
  2. Wähle Anpassen des Menübands und suche nach den verfügbaren Schaltflächen.
  3. Klicke auf die Schaltflächen, um ihre Funktionen zu sehen, jedoch erhältst Du hier keine ID-Liste.

Eine manuelle Methode kann zeitaufwendig sein, aber sie erfordert keine Programmierkenntnisse.


Praktische Beispiele

Hier sind einige Beispiele für ID-Funktionen von Buttons:

  • ID 1: Neu
  • ID 2: Öffnen
  • ID 3: Speichern
  • ID 4: Drucken

Um eine vollständige excel faceid list zu erhalten, kannst Du die ID-Liste generieren und die Funktionen der Schaltflächen nachschlagen.


Tipps für Profis

  • Nutze die msocontrolbutton IDs, um benutzerdefinierte Schaltflächen in Deinen VBA-Projekten zu erstellen.
  • Halte Deine ID-Liste aktuell, indem Du regelmäßig das Skript ausführst, um neue Schaltflächen zu erfassen.
  • Experimentiere mit der Anpassung der Schaltflächen und Funktionen, um Deine Excel-Oberfläche zu optimieren.

FAQ: Häufige Fragen

1. Wo finde ich die vollständige ID-Liste für Buttons? Du kannst die ID-Liste generieren, indem Du das oben angegebene VBA-Skript ausführst. Es listet alle verfügbaren IDs auf.

2. Was ist der Unterschied zwischen ID und FaceID in Excel? Die ID bestimmt die Funktion eines Buttons, während die FaceID das Aussehen des Buttons festlegt. Beide sind wichtig für die Anpassung der Benutzeroberfläche.

3. Ist das Skript in allen Excel-Versionen anwendbar? Das Skript funktioniert in den meisten Versionen von Excel, die VBA unterstützen, wie Excel 2010, 2013, 2016 und 2019.

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