VBA Profi gesucht



Excel-Version: 97SR2
nach unten

Betrifft: VBA Profi gesucht
von: WalterDa
Geschrieben am: 25.04.2002 - 05:09:26

Wie kann ich mit VBA eine Datei öffnen und das auto_open-Makro dieser Datei umgehen bzw. eine anderes Makro dieser Datei ausführen?

Ich möchte von einer Hauptdatei aus verschiedene Dateien öffnen und mit in den geöffneten Dateien vorhandenen Makros weiterarbeiten.
Wenn ich eine Datei mit VBA öffne (Workbooks.Open "Test.xls") die ein "Private Sub Workbook_Open"-makro enthält klappt die Referenzierung zur neu geöffneten Datei nicht. Ich habe das Beispiel in

https://www.herber.de/forum/archiv/112to116/t115764.htm

und auch schon anderen Threads dargestellt. Leider Konnte mir noch niemend weiterhelfen.

Gibt es eigentlich einen VBA-Befehl zum Öffnen einer Datei, der schon die Ausführung eines Makros der geöffneten Datei enthält, vielleicht wie

Workbooks.Open "Test.xls(call makro1)" oder irgend was ähnliches?

oder wie kann man vom Makro einer Datei eine Variable in ein Makro einer neu geöffneten Datei übergeben, so wie es beim Arbeiten in einer Datei mit call makro1(Variable) möglich ist?

Für einen Tipp wäre ich sehr dankbar.

nach oben   nach unten

Re: VBA Profi gesucht
von: Harald
Geschrieben am: 25.04.2002 - 08:23:58

Hallo Walter, ich habe das Problem auch schon beobachted, allerdings erst bei tieferen Verschachtelungen, dh. Mappe1.xls ruft Mappe2.xls auf, von dort per Makro wiederum Mappe3.xls aufrufen. Eine mögliche Lösungsansatz ist folgender: Workbooks.Open "Test.xls" Application.Run ("Test.xls!Makro1", Arg1,...) wobei Arg1,... die Übergabe von Argumenten darstellen soll. Gruß Harald

nach oben   nach unten

Re: VBA Profi gesucht
von: WalterDa
Geschrieben am: 25.04.2002 - 13:46:44

Harald, Danke für den Tip! wenn ich jetzt Test.xls folgendermaßen öffne Sub test() Application.Run ("Test.xls!testsub") End Sub wird zwar in Test.xls auch erst das auto open Makro abgearbeitet, aber soweit ich es testen konnte, wird jetzt plötzlich im auto open Makro auch richtig referenziert. Für mich im Moment nicht ganz verständlich, aber wahrscheinlich wird durch Application.Run ("Test.xls!testsub") die Referenz/der Bezug auf Test.xls gesetzt. Walter

 nach oben

Beiträge aus den Excel-Beispielen zum Thema "LEFT , RIGHT Meldung fehlendes Projekt /Bibliothek"