Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Makros aus anderer Datei ausführen

Forumthread: Makros aus anderer Datei ausführen

Makros aus anderer Datei ausführen
02.09.2002 17:50:09
richi
Hallo Allerseits

ich möchte über eine Vorlage Makros in einer anderen Arbeitsmappe aufrufen:

Application.run Dateiname.!Makroname

funktioniert nur dann, wenn keine Leerzeichen im Dateinamen enthalten sind. Leider ist aber der Dateiname individuell durch meine User beinflußt=> es können Leerzeichen enhalten sein.

Nun meine Frage:
Gibt es eine Möglichkeit TROTZ Leerzeichen im Dateinamen auf die Makros zuzugreifen ?

Vielen Dank im voraus
gruß
richi

Anzeige

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

Betreff
Datum
Anwender
Anzeige
Re: Makros aus anderer Datei ausführen
03.09.2002 09:54:52
Valente Christian
Hallo richi!

Probier's mal mit Hochkommas

(z.B.: Application.Run "'Mappe 1.xls'!Speed")

Zu dieser Lösung bin ich aber auch erst gekommen, als ich den Aufruf aufgezeichnet habe!

viel Erfolg
vbChr

Re: Makros aus anderer Datei ausführen
03.09.2002 10:27:01
richi
Hallo vbchr,

ich mache folgende Zuweisung:

PETName = ActiveWorkbook.Name
Windows(PETName).Activate
.
.
Windows(AMBIOS).Activate
MakroPET = PETName & "!Rabatt_zurücksetzen"
Application.Run MakroPET

Somit kann ich nicht mit Anführungszeichen arbeiten (PETName wird User-individuell generiert). Andere Möglichkeit ?

Vielen Dank für Deine Antwort
Gruß
richi

Anzeige
Re: Makros aus anderer Datei ausführen
03.09.2002 10:58:01
Valente Christian
Hallo richi!

Also, ich seh' genau zwei Möglichkeiten, wie Du das Problem lösen bzw umgehen kannst:

1. Abfragen, ob in PETName ein Leerzeichen vorhanden ist (If InStr ...) und dann Hochkommas einfügen und das Makro dann laufen lassen

oder

2. Schau Dir doch mal folgende Seite im Forum an, vielleicht kannst Du ja mit dem letzten Teil meines Vorschlags was anfangen (krempelt Deinen Ansatz jedoch völlig um)

viel Erfolg

vbChr

Anzeige
Re: Makros aus anderer Datei ausführen
03.09.2002 11:23:45
richi
Hallo vbchr
welche Seite im Forum meinst Du ?

Mit InStr mache ich zur Zeit eine Fehlerabfrage.
Werde mal mit Deinem Vorschlag experimentieren.
Vielen Dank für den Tip.

Viele Grüße
richi

uups! ...
03.09.2002 11:41:52
Valente Christian
die hier meinte ich:
https://www.herber.de/forum/messages/155715.html
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Makros aus anderer Datei ausführen


Schritt-für-Schritt-Anleitung

Um ein VBA Makro in einer anderen Datei auszuführen, befolge diese Schritte:

  1. Aktiviere die Zielarbeitsmappe, in der sich das Makro befindet.

  2. Nutze den Befehl Application.Run, um das Makro zu starten:

    Application.Run "'[Dateiname]![Makroname]'"

    Beachte, dass der Dateiname in Hochkommas eingeschlossen werden muss, insbesondere wenn Leerzeichen im Namen vorhanden sind.

  3. Wenn du den Dateinamen dynamisch ermitteln möchtest, kannst du Folgendes tun:

    Dim PETName As String
    PETName = ActiveWorkbook.Name
    Application.Run "'" & PETName & "'!Makroname"

Häufige Fehler und Lösungen

  • Fehler: Makro wird nicht gefunden

    • Lösung: Stelle sicher, dass der Dateiname und der Makroname korrekt eingegeben sind. Bei Leerzeichen im Dateinamen immer Hochkommas verwenden.
  • Fehler: Anwendung kann nicht ausgeführt werden

    • Lösung: Überprüfe, ob die Arbeitsmappe, die das Makro enthält, geöffnet ist. Andernfalls kannst du die Datei nicht ausführen.

Alternative Methoden

Wenn du Probleme beim Excel Makro aus einer anderen Datei starten hast, kannst du folgende Alternativen ausprobieren:

  1. Direktes Referenzieren: Verwende den vollständigen Pfad zur Datei:

    Application.Run "'C:\Pfad\zur\Datei.xls'!Makroname"
  2. Makro in anderer Arbeitsmappe ausführen: Du kannst auch ein Makro in einer bestimmten Arbeitsmappe ausführen, indem du die Arbeitsmappe aktivierst:

    Workbooks("AndereDatei.xls").Activate
    Application.Run "'AndereDatei.xls'!Makroname"

Praktische Beispiele

Hier sind einige praktische Beispiele, wie du ein Excel Makro auf eine andere Datei anwenden kannst:

  • Beispiel 1: Makro mit Leerzeichen im Dateinamen

    Application.Run "'Mappe 1.xls'!MakroName"
  • Beispiel 2: Dynamisches Abrufen des Dateinamens

    Dim Dateiname As String
    Dateiname = "C:\Benutzer\DeinBenutzername\Documents\Mappe 2.xls"
    Application.Run "'" & Dateiname & "'!MakroName"

Tipps für Profis

  • Verwende Fehlerbehandlungsroutinen in deinem VBA-Code, um mögliche Probleme beim Ausführen von Makros in anderen Dateien frühzeitig zu erkennen.
  • Teste deinen Code gründlich, insbesondere wenn du mit dynamischen Dateinamen arbeitest.
  • Halte deine Makros und Arbeitsmappen immer gut organisiert, um Verwirrung zu vermeiden.

FAQ: Häufige Fragen

1. Wie kann ich ein Makro aus einer geschlossenen Datei ausführen? Es ist nicht möglich, ein Makro aus einer geschlossenen Datei direkt auszuführen. Du musst die Datei zuerst öffnen.

2. Was kann ich tun, wenn mein Makro nicht funktioniert? Überprüfe den Dateinamen und den Makronamen auf Tippfehler und stelle sicher, dass die Datei geöffnet ist, bevor du das Makro aufrufst.

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