mit folgendem Code möchte ich einen neuen Menupunkt im Register AddIn anlegen:
Sub RegisterAddIn_erweitern()
Dim cb As CommandBar
Dim cbc As CommandBarControl
Dim cbcc As CommandBarButton
Debug.Print "RegisterAddIn_erweitern - ANFANG " & Time
Set cb = Application.CommandBars.ActiveMenuBar
Set cbc = cb.Controls("Extras")
Set cbcc = cbc.Controls.Add
With cbcc
.Caption = "NeuerMenüpunkt"
.OnAction = "MachWas"
.FaceId = 1813
End With
Debug.Print "RegisterAddIn_erweitern - ENDE " & Time
End Sub
Lasse ich diesen Code in einer normalen xlsm laufen, funktioniert dies problemlos. Ich möchte diesen Code aber im WorkbookOpen eines AddIns laufen lassen, so dass der Menupunkt also dann generiert wird, wenn das AddIn gestartet wird. Aus mir unerverständlichen Gründen wird das WorkbookOpen-Ereignis beim AddIn zwar aufgerufen, jedoch wird kein Menueintrag generiert. Die Debug.Prints hingegen werden sauber im Direktfenster angezeigt.Rufe ich die Sub im VBA-Editor schrittweise aus dem AddIn auf, so funktioniert es auch ohne Probleme. Habe die xlam auch schon komplett neu angelegt, jedoch ohne Erfolg.
Hat jemand eine Idee, was ich hier falsch mache?
Vielen Dank für jede Hilfe im voraus.
Gruß
eres
p.s. Nur der Vollständigkeit halber: Im AddIn habe ich im Workbook.BeforeClose natürlich auch eine Routine, um den neuen Menueintrag wieder zu löschen. Aber auch da gilt: In einer xlsm funktioniert es wunderbar, in der xlam jedoch nicht.