Live-Forum - Die aktuellen Beiträge
Datum
Titel
16.10.2025 17:40:39
16.10.2025 17:25:38
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Addin beim starten ausführen

Forumthread: Addin beim starten ausführen

Addin beim starten ausführen
26.04.2018 14:01:33
Gabriel
Guten Tag zusammen
Ich habe folgenden Code unter "Diese Arbeitsmappe" erstellt
Er soll beim Starten des Dokumentes überprüfen ob das Addin existiert. Wenn dies der Fall ist, wird es aktiviert, ansonsten wird es installiert und aktiviert.
Nach diesem Schritt soll das Makro, das in der Addin Datei steht gestartet werden. (Dies erstellt in der Menüleiste einen Knopf, der dann, mithilfe eines weiteren Makros, das Dokument entsprechend bearbeitet.)
(Bei "Pfad" und "Dateiname" steht bei mir das richtige ;))
Public Sub Workbook_Open()
Dim strName As String
Dim strKurzname As String
strName = "Pfad\Dateiname.xlam"
strKurzname = "Dateiname"
If Dir(strName)  "" Then
AddIns(strKurzname).Installed = True
MsgBox "Das Addin " & strKurzname & " ist nun wieder aktiviert."
Else
AddIns.Add Filename:=strName
AddIns(strKurzname).Installed = True
MsgBox "Das Addin " & strKurzname & " ist nun installiert."
End If
Application.Run "'strKurzname & !prcCreateButton'"
End Sub
Jedoch erscheint beim Starten der Datei (nach der MsgBox) folgende Fehlermeldung:
"Das Makro [...] kann nicht ausgeführt werden. Das Makro ist möglicherweise in dieser Arbeitsmappe nicht verfügbar, oder alle Makros wurden deaktiviert."
Anzeige

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Addin beim starten ausführen
26.04.2018 14:45:20
mmat
Das Problem sind die Zeichensetzung bei
Application.Run "'strKurzname & !prcCreateButton'"
probiere
Application.Run "'" + strKurzname  + "'!prcCreateButton"

& statt + ! owT
26.04.2018 15:01:27
Rudi
AW: & statt + ! owT
26.04.2018 15:21:16
Gabriel
Hallo Rudi
Vielen Dank für die schnelle Hilfe. :)
Beim Öffnen der Datei erscheint nun keine Fehlermeldung mehr, die Menüleiste wird jedoch leider auch nicht angepasst.
Wenn ich jedoch alle Schritte mit F8 einzeln ausführe, springt es in prcCreateButton und die Menüleiste wird angepasst.
Das Sub zum Anpassen der Menüleiste sieht wie folgt aus:
Option Explicit
Option Private Module
Public Sub prcCreateButton()
Dim myCommandBar As CommandBar
Dim myCommandBarButton As CommandBarButton
Set myCommandBar = Application.CommandBars("Worksheet Menu Bar")
Set myCommandBarButton = _
myCommandBar.Controls.Add(Type:=msoControlButton, _
Before:=myCommandBar.Controls.Count + 1, Temporary:=True)
With myCommandBarButton
.BeginGroup = True
.Caption = "Speichern und hochladen"
.FaceId = 3
.OnAction = "Stammdatenmakro"
.Style = msoButtonIconAndCaption
.TooltipText = "Speichern & als csv. hochladen"
.Tag = "Speichern & hochladen"
End With
Set myCommandBar = Nothing
Set myCommandBarButton = Nothing
End Sub
Noch einmal vielen Dank und gruss,
Gabriel :)
Anzeige
AW: & statt + ! owT
26.04.2018 15:23:23
Gabriel
Sorry meinte natürlich Hallo mmat
Komme mit dem Forum noch nicht so ganz klar :p
Option Pirate ?
26.04.2018 16:06:35
mmat
Hallo Gabriel,
lass doch mal das "Option Private Module" weg.
AW: Option Pirate ?
26.04.2018 16:22:30
Gabriel
Dies ändert leider gar nichts
Anzeige
AW: Option Pirate ?
26.04.2018 17:04:21
mmat
Hallo Gabriel,
grundsätzlich funktioniert das so. Mit Rudis Verfeinerung (& statt +) sogar noch viel besser.
Die aufgerufene Prozedur muß als Public deklariert sein und in einem allgemeinen VBA-Modul stehen.
Hab ich hier alles getestet. was ich allerdings nicht getestet habe, sind deine Methoden, das Add-In einzubinden und die Verfügbarkeit der Makros danach.
Anzeige
AW: Option Pirate ?
27.04.2018 09:51:22
Gabriel
Guten Morgen mmat
Vielen Dank für deine Mühe :)
Habe es geschafft, dass es nun funktioniert :)
Das sind gute Neuigkeiten :-) owT
27.04.2018 09:54:24
mmat
Wie kann ich Option PIRATE downloaden ;-) (owT)
27.04.2018 12:05:31
EtoPHG

Anzeige
;
Anzeige
Anzeige

Infobox / Tutorial

Addin beim Starten ausführen in Excel


Schritt-für-Schritt-Anleitung

  1. Öffne den Visual Basic for Applications (VBA) Editor:

    • Drücke Alt + F11, um den VBA-Editor zu öffnen.
  2. Füge den folgenden Code in "Diese Arbeitsmappe" ein:

    Public Sub Workbook_Open()
       Dim strName As String
       Dim strKurzname As String
       strName = "Pfad\Dateiname.xlam"
       strKurzname = "Dateiname"
       If Dir(strName) <> "" Then
           AddIns(strKurzname).Installed = True
           MsgBox "Das Addin " & strKurzname & " ist nun wieder aktiviert."
       Else
           AddIns.Add Filename:=strName
           AddIns(strKurzname).Installed = True
           MsgBox "Das Addin " & strKurzname & " ist nun installiert."
       End If
       Application.Run "'" & strKurzname & "'!prcCreateButton"
    End Sub
  3. Korrigiere den Fehler bei der Anwendung:

    • Stelle sicher, dass die Zeile Application.Run korrekt ist. Ändere sie wie folgt:
      Application.Run "'" + strKurzname + "'!prcCreateButton"
  4. Führe das Makro beim Start aus:

    • Speichere die Arbeitsmappe und schließe den VBA-Editor.
    • Schließe und öffne die Arbeitsmappe erneut, um das Makro zu testen.

Häufige Fehler und Lösungen

  • Fehlermeldung: "Das Makro ist möglicherweise in dieser Arbeitsmappe nicht verfügbar."

    • Überprüfe, ob das Addin korrekt installiert und aktiviert wurde.
    • Achte darauf, dass die aufgerufene Prozedur prcCreateButton als Public deklariert ist und sich in einem allgemeinen VBA-Modul befindet.
  • Menüleiste wird nicht angepasst:

    • Wenn das Makro beim Schritt-für-Schritt-Ausführen (F8) funktioniert, aber beim automatischen Start nicht, überprüfe die Reihenfolge der Makroaufrufe und stelle sicher, dass alle Abhängigkeiten korrekt geladen sind.

Alternative Methoden

  • VBA einzelne Schritte ausführen:

    • Du kannst das Makro auch manuell starten, um zu prüfen, ob alle Teile funktionieren. Führe die einzelnen Schritte im VBA-Editor aus, um Fehler zu identifizieren.
  • Verwende ein anderes Makro:

    • Anstelle von prcCreateButton kannst du auch ein anderes Makro aufrufen, um zu testen, ob das Problem spezifisch für dieses Makro ist.

Praktische Beispiele

Hier ist ein Beispiel für ein einfaches Makro, das beim Starten der Datei eine Nachricht anzeigt:

Public Sub Workbook_Open()
    MsgBox "Willkommen zu deiner Excel-Arbeitsmappe!"
End Sub

Füge diesen Code in "Diese Arbeitsmappe" ein und teste, ob die Nachricht beim Öffnen der Datei angezeigt wird.


Tipps für Profis

  • Debugging: Nutze die Debug.Print Methode, um Ausgaben im Direktfenster zu sehen und den Status deiner Variablen zu überprüfen, während das Makro ausgeführt wird.

  • Sicherheitsoptionen: Achte darauf, dass die Makros in Excel aktiviert sind. Gehe zu Datei > Optionen > Trust Center > Einstellungen für das Trust Center und aktiviere Makros.


FAQ: Häufige Fragen

1. Wie aktiviere ich Makros in Excel? Um Makros zu aktivieren, gehe zu Datei > Optionen > Trust Center und wähle unter Einstellungen für das Trust Center die Option für die Aktivierung von Makros aus.

2. Was mache ich, wenn mein Addin nicht gefunden wird? Stelle sicher, dass der Pfad und der Dateiname im Code korrekt angegeben sind. Überprüfe auch, ob die Datei tatsächlich an dem angegebenen Ort vorhanden ist.

3. Warum wird das Makro nicht beim Start ausgeführt? Überprüfe die Makrosicherheitseinstellungen in Excel und stelle sicher, dass du die Datei als Makro-enabled (.xlsm) speicherst.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige