Beim Starten von Excel-Addin Menüeintrag aktivieren

Dieses Thema Beim Starten von Excel-Addin Menüeintrag aktivieren im Forum "Microsoft Office Suite" wurde erstellt von kukris, 19. Juni 2006.

Thema: Beim Starten von Excel-Addin Menüeintrag aktivieren Hallo, nachdem Matjes mir freundlicherweise ein Skript zum Konvertieren von Excel-Dateien in Textdateien...

  1. Hallo,

    nachdem Matjes mir freundlicherweise ein Skript zum Konvertieren von Excel-Dateien in
    Textdateien geschrieben hatte, habe ich daraus ein Excel-Addin erstellt.

    Nun will ich, daß beim Starten des Addins sich automatisch ein neuer Menüpunkt in
    die Menüleiste einklinkt (z. B. Tools).

    Dazu habe ich folgenden Code dem Excel-Addin als neues Modul zum bereits bestehenden
    Programmcode hinzugefügt:

    Code:
    Public Sub Workbook_Open()
    'Menü erzeugen
    Dim Menue As CommandBarPopup
    Dim Schaltflaeche As CommandBarButton
    ' Menüpunkt anlegen
    With Application.CommandBars(Worksheet Menu Bar)
        Set Menue = .Controls.Add(Type:=msoControlPopup, _
             before:=.Controls.Count, temporary:=False)
    End With
    ' Unterpunkte im Menü anlegen
    Menue.Caption = &Tools                     ' Name des Menüs
        Set Schaltflaeche = Menue.Controls.Add
            With Schaltflaeche
                .Style = msoButtonIconAndCaption   -> Format für Menüpunkt: Icon und Text
                .FaceId = 733                     -> Nummer des Icons
                .Caption = Convert Xls to Txt -> Name der Menüzeile
                .OnAction = main_XlsToTxt         ' Aktion ausführen
                .BeginGroup = True                 -> Trennlinie erzeugen
            End With
    End Sub
    
    Das Excel-Addin habe ich unter Extras-->Addins-Manager aktiviert, aber ich bekomme kein Menü.
    Erst wenn ich in die VB-Entwicklungsumgebung wechsle und dort obigen Code starte erscheint das
    Menü. Sobald ich Excel schließe und wieder starte ist der Menüeintrag auch nicht mehr vorhanden.

    Wie kann ich einen permanenten Menüeintrag beim Starten des Excel-Addins erzeugen?
     
  2. Hallo kukris,

    beim Excel-Add-In funktioniert das etwas anders als bei normalen Mappen.

    Schreib erstmal eine Sub, die dir den Menü-Eintrag erstellt.
    Also z.B.
    Code:
    Sub MeinMenuEintragErstellen()
    ...
    End Sub
    Diese Funktion sollte auch prüfen, ob der Menu-Eintrag schon vorhanden ist , sonst stapeln sich die im Menu  ;D

    Dann solltest Du dich entscheiden, ob der Menü-Eintrag dauerhaft (temporary:=False) sein soll oder temporär(temporary:=True). Temporär hiesse, er wird beim Beenden von Excel automatische entfernt. Bei->dauerhaft' solltest Du eine 2. Sub MeinMenuEintragLoeschen () erstellen, die den Menu-Punkt wieder entfernt, so dass wenn du das AddIn entferntst, Excel wieder ohne den Menu-Eintrag startet.

    Die Ereignis-Prozedur, die beim Öffnen der AddIns ausgelöst wird, heisst Auto_Open. Also muß in einem Modul deines AddIn soetwas stehen wie
    Code:
    Public Sub Auto_Open()
        Call MeinMenuEintragErstellen()
    End Sub
    Beim Schliessen wird Auto_Close() durchlaufen.
    Code:
    Public Sub Auto_Close()
        Call MeinMenuEintragLoeschen()
    End Sub
    Gruß Matjes :)
     
  3. Danke dir. Mit Public Sub Auto_Open() hat funktioniert das Ganze.
     
Die Seite wird geladen...

Beim Starten von Excel-Addin Menüeintrag aktivieren - Ähnliche Themen

Forum Datum
Vista Windows Mail: listet beim Starten sämtliche Ordner und Unterordner auf !!! Windows Vista Forum 17. Apr. 2014
PC hängt beim Starten Windows XP Forum 10. Aug. 2011
Windows 7 (64Bit) plötzlicher Fehler beim starten Windows 7 Forum 27. Juli 2010
Scharzer Bildschirm beim Starten Software: Empfehlungen, Gesuche & Problemlösungen 2. Feb. 2009
wwsetup - unerwünscht beim Starten Windows XP Forum 3. Juni 2013