QueryTables.Add in Excel Makro Arbeitsspeicher Excel wird rießig

Mitglied: davidl

davidl (Level 1)

13.10.2011 um 08:10 Uhr, 9263 Aufrufe, 1 Kommentar

Hallo,

ich hab ein Excel Makro das ca. 80 andere CSV-Excel-Dateien öffnet und den Inhalt in die aufrufende Excel(mir Makro)-Datei in jeweils ein neues Tabellenblatt importiert.


In "datei" steht halt der Pfad+Dateiname und in "name" nur der Dateiname.
Das hat bis gestern auch so funktioniert, ich konnte das Makro ausführen, 5min später war es fertig und ich konnte es speichern.

Jetzt wird das Makro zwar auch ausgeführt, aber ich kann es nicht mehr speichern. Ich vermute jetzt mal das das mit der Arbeitsspeichergröße von Excel (1.500.000K nach Ausführung des Makros) zu tun hat. Bisher ist mir das ja nie aufgefallen, jetzt wo ein Problem auftat hab ich das erst mit bekommen. Jetzt ist natürlich nicht schwer herauszufinden warum das so groß ist, ich mach ja rund 80 Excel Tabellen quasi auf.

Nun meine Frage, kann man des privaten Arbeitsspeicher von Excel mittels VBA begrenzen oder besser wieder freigeben (malloc oder sowas).

Hab in Google folgende Lösungen gefunden und unter das ActiveSheet.QueryTables.Add geschrieben, hat aber nichts gebracht:

Ich bin auch schon drauf gekommen dass, wenn ich .Refresh BackgroundQuery:=False auskommentiere, der Arbeitsspeicher nicht wächst, neur halt auch keine Tabellen importiert werden :-) face-smile

Lg David
1 Kommentar
Mitglied: davidl
20.10.2011 um 12:05 Uhr
Hab gelöst indem ich für jede Tabelle, die ich einfüge, eine neue Mappe auf mache, dort die Daten importiere, die Daten verschiebe und die Mappe wieder schließe.
So bleibt der Arbeitsspeicher der "Hauptmappe" fast gleich weil die eine Mappe wo die Daten importiert werden, immer wieder geschlossen wird.

Hoffe das hilft wem. :-) face-smile