Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Zugriff auf externes Makro verweigert

Zugriff auf externes Makro verweigert
10.05.2019 11:48:58
Roland
Ich möchte ein AddIn für mehrere Nutzer auf dem Netzwerk platzieren, das alle Makros beinhaltet, die von verschiedenen Excel-Dateien aus nutzbar sein sollen.
Momentan bin ich noch in der Testphase mit nur meinem Rechner, bevor ich das Team mit "anbinde".
Evtl. von Bedeutung: Wir arbeiten mit Remoteanwendungen (Office-Version 2013) über das System Citrix, also nicht mit lokal installierten Versionen von Microsoft Office.
Ich habe:
- das AddIn auf den Server gelegt
- das AddIn auf meinem Rechner zur Verfügung gestellt (Optionen - AddIns)
- alle Makros aktiviert (Trust Center)
- den Speicherort als vertrauenswürdig eingestuft (Trust Center)
- einem Button in einer Datei ein Makro aus dme AddIn zugewiesen
- in die "Workbook_Open" der Datei einen Verweis auf ein (anderes) Makro aus dem AddIn gegeben (mittels Application. Run)
Effekt:
- auf den Button-Klick funktioniert die Routine einwandfrei
- beim Verweis aus dem VBA-Code

Private Sub Workbook_Open()
Application.Run "AddIn-Bew.xlam!Bew_WbkOpen"
End Sub

erscheint
"Fehler 1004: Das Makro kann nicht ausgeführt werden. Das Makro ist möglicherweise in dieser Arbeitsmappe nicht verfügbar, oder alle Makros wurden deaktiviert."
Das gleiche passiert, wenn ich testhalber das AddIn lokal auf C: in den vertrauenswürdigen Odner für die AddIns lege.
Wie lässt sich das beheben?
Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zugriff auf externes Makro verweigert
10.05.2019 12:26:36
Marco
Nur eine Vermutung - nicht getestet, aber versuch einmal den kompletten Pfad wie z.B. Application.Run "C:\AddIn-Bew.xlam'!Bew_WbkOpen" anzugeben. Auch mit dem '
So habe ich einige meiner Makros eingebunden.
Viele Grüße
Marco
AW: Zugriff auf externes Makro verweigert
10.05.2019 13:32:54
Roland
Hallo Marco,
unglaublich, aber wahr! Das war es schon. Ich habe ewig rumgesucht.
Vielen Dank für den Tipp!
Roland
Anzeige
Das könnte ggf auch mit daran liegen, ...
10.05.2019 16:14:13
Luc:-?
…Roland,
dass in dem(/n) VBA-Projekt(en) der Mappe(n), in denen die externen Makros verwendet wdn sollen, sofern sie denn über­haupt Makros mit Verwendung externer Prozeduren enthalten, diese Prozeduren unbekannt sind. Dann sollte nämlich, außer dem von Marco bereits Genannten, auch noch ein Verweis auf diese externe Mappe in den betreffenden Mappen gesetzt wdn, was allerdings die eindeutige (Um-)Benennung (Name, nicht DateiBezeichnung) des VBA-Projekts der externen Mappe voraussetzt.
Gruß, Luc :-?
Anzeige
AW: Das könnte ggf auch mit daran liegen, ...
10.05.2019 17:00:46
Roland
Hallo Luc,
in welcher Form - meinst du - sollte der Verweis gesetzt werden?
Kannst du ein Bsp. formulieren?
Für mich an der Sache immer noch rätselhaft ist ja, dass die Fehlermeldung nicht darauf hindeutete, dass das AddIn nicht gefunden wurde, sondern innerhalb der Datei das fragliche Makro. Er muss ja die Datei zumindest erkannt haben.
Roland
Anzeige
Wenn man Makros einer anderen, ...
10.05.2019 20:05:56
Luc:-?
…im Zugriff stehenden Mappe, in Makros einer Mappe verwenden will, Roland,
muss man im VBE dieser Mappe einen Verweis auf die andere Mappe setzen → Menü Extras - Verweise. Dort wdn alle möglichen zugäng­lichen DLLs und VBA-Projekte aufgeführt (bei Auswahl unten dann die QuellAngabe). Wenn das VBA-Projekt der anderen Mappe einen eindeutigen eigenen Namen hat, ist es dort identifizierbar aufgeführt, falls es im Zugriff steht. Und nur dann kann es in der Liste nicht nur angehakt, sondern auch erfolgreich ein Verweis per OK angelegt wdn, der dann auch im VerzeichnisBaum erscheint (unter Verweise zum jeweiligen VBA-Projekt). (Win- und office-interne Verweise wdn idR nicht separat angezeigt.)
Luc :-?
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Zugriff auf externes Makro verweigert


Schritt-für-Schritt-Anleitung

  1. AddIn erstellen und speichern: Lege das AddIn in einem vertrauenswürdigen Ordner ab. Achte darauf, dass alle Makros aktiviert sind.
  2. AddIn im Excel hinzufügen: Gehe zu Datei > Optionen > Add-Ins, wähle Excel-Add-Ins und aktiviere dein AddIn.
  3. Makro zuweisen: Weisen einen Button in einer deiner Excel-Dateien ein Makro aus dem AddIn zu.
  4. Workbook_Open-Methode anpassen: Füge in das VBA-Modul der Arbeitsmappe folgenden Code ein:
    Private Sub Workbook_Open()
       Application.Run "C:\Pfad\zu\deinem\AddIn-Bew.xlam!Bew_WbkOpen"
    End Sub
  5. Fehlerbehebung: Falls die Meldung "Das Makro kann nicht ausgeführt werden. Das Makro ist möglicherweise in dieser Arbeitsmappe nicht verfügbar" erscheint, überprüfe den angegebenen Pfad und die Makronamen.

Häufige Fehler und Lösungen

  • Fehler 1004: Dieser Fehler tritt auf, wenn das Makro in der Arbeitsmappe nicht verfügbar ist. Überprüfe, ob der Name des Makros korrekt ist und das AddIn im richtigen Ordner gespeichert ist.
  • Makros werden nicht ausgeführt: Stelle sicher, dass die Makros im Trust Center aktiviert sind. Gehe zu Datei > Optionen > Trust Center > Einstellungen für das Trust Center > Makroeinstellungen.
  • Externe Prozeduren unbekannt: Möglicherweise fehlen Verweise auf die externen VBA-Projekte. Setze im VBE einen Verweis auf die externe Datei unter Extras > Verweise.

Alternative Methoden

  • Vollständiger Pfad: Verwende den vollständigen Pfad für das Makro, wie z.B. Application.Run "C:\AddIn-Bew.xlam!Bew_WbkOpen".
  • Direktes Einfügen von Modulen: Du kannst auch die benötigten Module direkt in deine Arbeitsmappe kopieren, um Zugriff auf die Makros zu haben.
  • Erstellen einer neuen Arbeitsmappe: Manchmal kann es helfen, die Arbeitsmappe neu zu erstellen und die Makros erneut zu verknüpfen.

Praktische Beispiele

  1. Button-Makro:

    Sub Button_Click()
       Application.Run "AddIn-Bew.xlam!MeinMakro"
    End Sub
  2. Workbook_Open mit Verweis:

    Private Sub Workbook_Open()
       On Error Resume Next
       Application.Run "C:\Pfad\zu\deinem\AddIn-Bew.xlam!Bew_WbkOpen"
       If Err.Number <> 0 Then
           MsgBox "Das Makro ist möglicherweise in dieser Arbeitsmappe nicht verfügbar."
       End If
    End Sub

Tipps für Profis

  • Verwende eindeutige Namen: Achte darauf, dass die Namen deiner Makros eindeutig sind, um Verwechslungen zu vermeiden.
  • Debugging: Nutze Debug.Print im VBA-Editor, um zu prüfen, ob dein Makro überhaupt aufgerufen wird.
  • Fehlerbehandlung: Implementiere eine Fehlerbehandlung, um Nutzer über Probleme zu informieren, wenn das Makro nicht ausgeführt werden kann.

FAQ: Häufige Fragen

1. Warum erhalte ich die Fehlermeldung "Das Makro kann nicht ausgeführt werden"? Diese Fehlermeldung tritt auf, wenn das Makro in der angegebenen Arbeitsmappe nicht verfügbar ist oder alle Makros deaktiviert wurden.

2. Wie kann ich sicherstellen, dass mein AddIn korrekt registriert ist? Überprüfe die Einstellungen im Trust Center und stelle sicher, dass dein AddIn im richtigen Ordner gespeichert ist und die Makros aktiviert sind.

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