VBA Excel: Symbolleiste nach Dateiöffnen verändern

Hallo habe folgende Aufgabenstellung:
Das öffnen einer bestimmten Datei soll in der Symbolleiste „Makros“ einen Befehl (Benutzerdefiniertes Menüelement) hinzufügen. Diesem soll ein Name und ein Makro zugewiesen werden.
Nach schließen der Datei soll dieses Menüelement wieder aus der Symbolleiste gelöscht werden.
Mein Lösungsversuch:
Manuelle Ausführung bei laufendem Makrorekorder und anschließender Analyse des erstellten Makros: Die Namens und Makrozuweisung wurde nicht aufgezeichnet!
Danke für Eure Hilfe Joerg

also Makros mit Makros erstellen wäre wohl das thema :smile:

http://www.digital-inn.de/ms-excel/2499-excel97-makr…

hoffe es hilft

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hallo RakonDark,
Das Makro existiert bereits und ist Bestandteil der Datei welche geöffnet wird!
Durch öffnen dieser Datei soll ein Befehl in der Symbolleiste hinzugefügt und bei schließen der Datei (oder beenden von Excel) dieser wieder aus der Symbolleiste gelöscht werden.
Gruß Joerg

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hallo RakonDark,
Das Makro existiert bereits und ist Bestandteil der Datei
welche geöffnet wird!
Durch öffnen dieser Datei soll ein Befehl in der Symbolleiste
hinzugefügt und bei schließen der Datei (oder beenden von
Excel) dieser wieder aus der Symbolleiste gelöscht werden.
Gruß Joerg

Symbolleiste /t/vba-excel-eigene-symbole-fuer-eigene-symbolleiste…
Open Datei Execute Macro : /t/excel-makro-beim-oeffnen-ausfuehren/1561119

Das öffnen einer bestimmten Datei soll in der Symbolleiste
„Makros“ einen Befehl (Benutzerdefiniertes Menüelement)
hinzufügen. Diesem soll ein Name und ein Makro zugewiesen
werden.
Nach schließen der Datei soll dieses Menüelement wieder aus
der Symbolleiste gelöscht werden.

Hi Joerg,

(die "Rem " musste entfernen, hab hier grad nur OO)

In „DieseArbeitsmappe“

Rem Option Explicit
Rem ’
Rem Private Sub Workbook_BeforeClose(Cancel As Boolean)
Rem Call Loeschen
Rem End Sub
Rem ’
Rem Private Sub Workbook_Open()
Rem Call Zusatzbutton
Rem End Sub
Rem
Rem
Rem
End Sub

In ein Modul:

Rem Option Explicit
Rem ’
Rem Sub Zusatzbutton()
Rem Dim cmdBB As CommandBarButton
Rem Set cmdBB = Application.CommandBars(„Tools“).Controls(„Ma&kro“).Controls.Add(Type:=msoControlButton, Temporary:=True)
Rem With cmdBB
Rem .FaceId = 567
Rem .Caption = „Eule“
Rem .OnAction = „Test“
Rem End With
Rem Set cmdBB = Nothing
Rem End Sub
Rem ’
Rem Sub Loeschen()
Rem Dim cmdBB As CommandBarButton
Rem With Application.CommandBars(„Tools“).Controls(„Ma&kro“)
Rem For Each cmdBB In .Controls
Rem If cmdBB.Caption = „Eule“ Then cmdBB.Delete
Rem Next cmdBB
Rem End With
Rem Set cmdBB = Nothing
Rem End Sub
Rem ’
Rem Sub Test()
Rem MsgBox „Huhu“
Rem End Sub

Gruss
Reinhard