|  
                                             
	Hallo Till, 
	  
	der Aufruf erfolgt aus einem AddInn. 
	  
	Im Modul "DieseArbeitsmappe" 
	  
Option Explicit
'------------------------------
' letzte Änderung: 25.11.2011
'------------------------------
Private Sub Workbook_Open()
    
    Menü_löschen
    Menü_erstellen
End Sub
Private Sub Workbook_BeforeClose(Cancel As Boolean)
    
    Menü_löschen
End Sub
	  
	im "Modul_Aufruf" 
	  
Option Explicit
'------------------------------
' letzte Änderung: 25.11.2011
'------------------------------
Dim clsAddMenu As New clsMenue
Sub Menü_erstellen()
    
    clsAddMenu.AddMenuItem
End Sub
Sub Menü_löschen()
    
    Set clsAddMenu = Nothing
    On Error Resume Next
    Application.VBE.CommandBars("Code Window"). _
       Controls("Programmerstellung").Delete
End Sub
	  
	und im Klassenmodul "clsMenue" 
	  
Option Explicit
'------------------------------
' letzte Änderung: 12.1.2012
'------------------------------
Public WithEvents Menue As VBIDE.CommandBarEvents
Public Sub AddMenuItem()
    
Dim ctlTopMenu As CommandBarButton
Set ctlTopMenu = Application.VBE.CommandBars("Code Window"). _
   Controls.Add(Type:=msoControlButton)
ctlTopMenu.BeginGroup = True
ctlTopMenu.Caption = "Programmerstellung"
ctlTopMenu.Enabled = True
Set Menue = Application.VBE.Events.CommandBarEvents(ctlTopMenu)
End Sub
Private Sub Menue_Click(ByVal cmdBar As Object, handled As Boolean, Cancel As Boolean)
Dim LW As String
Dim Pfad As String
Pfad = ThisWorkbook.Path & "\"
LW = Left(Pfad, 3)
ChDrive LW
ChDir Pfad
If Excel.Application.Workbooks.Count > 0 Then
    Run "'Programmerstellung.xlsm'!Modul_Programmerstellung.Programmerstellung", ActiveWorkbook.Name
Else
    MsgBox "Es ist keine bearbeitbare Excel-Datei geöffnet.", vbOKOnly, "Fehlermeldung"
End If
    
End Sub
	  
     |