Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1344to1348
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

QueryTables

QueryTables
31.01.2014 11:42:55
Fabio
Hallo!
Ich habe eine Makro erzeugt, die folgendes macht:
- über einen Knopf kann man Dateien auswählen, die man bearbeiten möchten. Es wird in Excel eine Liste erzeugt;
- über einen 2. Knopf werden die Dateien in der Liste über den Excel-Import eingelesen (es handelt sich um Messdaten) und ein neues Worksheet pro Datei wird kreiert;
- danach werden die Messdaten ausgedünnt und pro neues Worksheet wird ein Diagramm erzeugt.
Das Problem ist, dass nach etwa 30 Dateien, eine Fehlermeldung kommt. Wenn ich Excel zu mache und ab der abgestürzten Datei fortsetze, läuft die Makro weiter für etwa 30 Dateien. Ich vermute, es ist ein Problem mit der RAM, die langsam voll belegt wird.
Dabei habe ich gedacht, dass VBA jedes Mal eine neue QueryTable erzeugt und dass könnte ein Problem sein. Kann man eine QueryTable, die im Hintedgrund läuft, zumachen?

Danke Euch,
Fabio

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

Betreff
Datum
Anwender
Anzeige
AW: QueryTables
31.01.2014 11:59:42
EtoPHG
Hallo Fabio,
Ein aufgezeichneter Makrocode für den Import von Daten in XL generiert immer eine .Add Methode des Querytables Objekt. D.h. wenn diese nicht irgendwann löschst, wir dein XL Datei irgendwann mal platzen (ich hab schon Arbeitsmappen mit Tausenden von Querytables in einem Blatt angetroffen, obwohl 1 vollständig genügt hätte). Der Refresh einer Querytable sollte IMHO immer mit dem Parameter BackgroundQuery:=False durchgeführt werden, damit der Import auch vollständig und kontrolliert abläuft.
Am besten zeigst du uns mal dein Code?
Gruess Hansueli

Anzeige
AW: QueryTables
31.01.2014 14:59:35
Werner
Hallo Hansueli
...
Nachfrage: wie kann ich in einer Datei prüfen, ob im Hintergrund Querytables "laufen" ?
oder habe ich da was falsch verstanden ?
Gruss
Werner

AW: QueryTables Refresh
01.02.2014 13:25:43
EtoPHG
Hallo Werner,
Wenn du abfragen willst, ob im Hintergrund ein Datenimport läuft, dann benutze die queryTable.Refreshing Methode. Sie liefert ein True, falls der .Refresh noch aktiv ist und ein False, wenn kein Datentransfer mehr läuft.
Aber wie gesagt, mit .Refresh BackgroundQuery:=False wird die Kontrolle an XL erst nach erfolgreichem, vollständigen Datentransfer zurückgegeben.
Gruess Hansueli
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige