Workbook_BeforeClose wird nicht ausgeführt.
25.02.2004 14:21:25
Jürgen
ich habe eine XLA-Datei die sehr viele Makros enthält.
Unter anderem wird beim öffnen der XLA-Datei eine eigene Menüleiste erzeugt und im Kontextmenü werden Menüpunkte erzeugt. Das Addin ist nicht eingebunden sondern wird nur dann aufgerufen wenn man damit arbeiten möchte.
Mein Problem ist: Ich möchte daß, wenn Excel, und somit die XLA-Datei, geschlossen wird, das eigene Menü und die Einträge im Kontextmenü gelöscht werden. Genau das habe ich in den folgenden Makro gepackt:
Option Explicit
Private Sub Workbook_BeforeClose(Cancel As Boolean)
' Der Makro wird beim beenden von Excel ausgeführt. _
Er entfernt das Menü "KALK" und die zusätzlich erzeugten Menüpunkte im Kontextmenü.
Application.DisplayAlerts = False
' Makro "KalkMenReMausLoesch" wird ausgeführt (Einträge im Kontextmenü löschen).
KalkMenReMausLoesch
On Error Resume Next
Dim CBC As CommandBarControl
' Alle Menüs überpürüfen und das Menü "KALK" löschen
For Each CBC In Application.CommandBars("Worksheet Menu Bar").Controls
Application.CommandBars("Worksheet Menu Bar").Controls("KALK").Delete
Next
End Sub
Aber es funktioniert nicht. Ich kann diesen Code auch nicht testen oder ausführen. Keine Ahnung wo der Fehler liegt.
Komischerweise ist das nur unter Excel 2000 so denn unter Excel 2003 funktioniert das einwandfrei.
Bitte um Hilfe!
Vielen Dank im Vorraus.