Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1508to1512
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Arbeitsmappenübgreifende Schleifen

Arbeitsmappenübgreifende Schleifen
18.08.2016 16:43:12
Ole
Moin moin,
ich habe ein Problem, dass ich auch bei intensivem Googlen nicht lösen konnte, daher wende ich mich jetzt an die Experten.
Ich habe 2 Workbooks, die ich leider nicht in eine Arbeitsmappe zusammenfassen kann.
Datei1 (WL) ist meine Quelldatei
Datei2 (ESI)ist ein Template
Kurz gefasst soll mein Modul aus Datei 1 folgendes tun:
for i=1 to 6
öffne Datei2
kopiere Werte von Datei 1 nach Datei2, die in jedem Durchlauf variieren
lass das Modul aus Datei2 laufen mit
Application.Run "ESI.xlsm!Exportaufruf" 'Das Modul braucht min 5 Minuten und _
speichert die Datei 2 unter einem generierten Namen (alle 6 Namen sind verschieden) und schließt Datei 2 ohne zu Speichern, damit bleibt das Template unverändert
next
An sich funktioniert alles. Das Problem ist, dass die Schleife nicht mehrfach durchläuft, sondern scheinbar nach dem ersten Application.run abbricht. Das gleiche passiert, wenn ich die die Befehle nicht in einer Schleife, sondern untereinander schreibe. Selbst Haltepunkte die einen 2. Durchlauf prüfen sollen werden nicht aufgerufen. Es gibt keine Fehlermeldung. Als Ergebnis erhalte ich in allen Fällen nur eine von 6 Dateien in meinem Zielordner und Datei 1(WL) ist offen.
Was kann der Grund dafür sein kann, kann mir jemand das erklären?
Fehlt bespw. ein Befehl in Datei2.modul, der wieder Datei1.modul aufruft? Bei letzterem soll der Sprung genau zu der richtige Stelle der Schleife führen.
Hoffentlich kann mir jemand helfen.
Vielen Dank im Voraus!
Beste Grüße
Ole

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Arbeitsmappenübgreifende Schleifen
18.08.2016 17:26:45
Piet
Hallo Ole,
das ist ein Fall für die echten VBA Profis, bin gespannt was sie antworten. Mich erinnert es an den "Baron Münchhausen", der sich selbst am Schopf faste uns mitsamt Pferd aus dem Sumpf zog. Im Buch ist das leicht zu beschreiben, aber hast du das mal in der Praxis ausprobiert? Da kommen mir Bedenken. Vielleicht laesst es sich lösen, aber ich denke: "das ist ein heisses Eisen"
mfg Piet
AW: Arbeitsmappenübgreifende Schleifen
18.08.2016 20:15:02
ChrisL
Hi Ole
Als Profi würde ich mich nicht bezeichnen, aber ich mag solch mysteriösen Sachen :)
Ist das Template als *.xltm gespeichert? Dann wäre m.E. das Schliessen ohne Speichern überflüssig, da beim Öffnen der Vorlage bereits ein "Datei-Kopie" verwendet wird.
Ohne es zu testen, aber ich glaube das Vorgehen an sich ist OK. Kannst du ja einfach Test und die Vorlage mal durch eine neue Mappe ersetzen. Darin ein ganz simpler Code z.B.
Range("A1") = "x"
Wenn es nicht funktioniert, mal den Code und Beispielmappe ins Forum stellen.
Falls die abgespeckte Version funktioniert, muss es wohl an der Vorlage-Datei liegen. 5 Minuten scheint mir sehr lange (sind es grosse Datenmengen oder kompliziertes Makro?).
cu
Chris
Anzeige
AW: Arbeitsmappenübgreifende Schleifen
23.08.2016 11:39:04
Ole
Hallo,
ich habe selbst die Antwort zu dem Problem gefunden.
Die zweite Datei hat sich selbst geschlossen mit:
Thisworkbook.close
Dadurch kann das Modul dieses Workbooks nicht zu Ende laufen.
Die Lösung ist in dem anderen Modul das zweite workbook zu schließen mit
Workbooks(2).Close.
Jetzt funktioniert alles!

302 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige