Clever-Excel-Forum

Normale Version: ShowAllData läuft sehr (sehr) lange
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2
Hallo,
seit einiger Zeit habe ich ein störendes Problem mit einigen Excel-Tabellen. Leider weiß ich nicht, seit wann das auftritt und ob es mit einem Update in Verbindung gebracht werden kann.
Zu meiner Verwendung von Excel: ich habe permanent ca. 13 Tabellen geöffnet, die ich immer wieder benötige und nicht jedes mal starten will. Für alle diese Tabellen wird jeweils eine eigene Instanz von Excel gestartet.

Ich beschreibe das Problem jetzt anhand einer Tabelle, die aus 6 Blättern besteht und das Blatt, in dem das Problem auftritt, besteht aus 14 Spalten und z.Zt. 23.800 Zeilen. Für alle Spalten ist ein Autofilter eingerichtet.

Jetzt wird gefiltert: Spalte N: Filter wenn 1, Spalte M: Filter wenn nicht 1 (sowohl M als auch N, werden mit einfacher Formel aus zwei anderen Spalten der selben Zeile berechnet, die jeweils Konstanten enthalten, oder sind beide leer)

Wenn ich jetzt entweder im Menue "Sortieren und Filtern - Löschen" anklicke oder den Filter in beiden Spalten wieder auf "Alles auswählen" setze dann wird sofort wieder die gesamte Tabelle angezeigt.

So weit, so gut!

Nach einiger Zeit verändert sich das Verhalten aber  :22:

Wenn ich dann den Filter in beiden Spalten wieder auf "Alles auswählen" setze, dann klappt das immer noch sofort. Wenn ich allerdings im Menue "Sortieren und Filtern - Löschen" anklicke, dann dauert das. 10 Sekunden, 30 Sekunden, ich habe auch schon mal 10 Minuten gewartet ... dabei ist die CPU bzw. einer der logischen Prozessoren zu 100% ausgelastet und der Prozess steht im Task-Manager mit "Keine Rückmeldung".

Um den Test zu vereinfachen  habe ich die beiden Varianten in zwei Makros gepackt, die zusätzlich die Uhrzeit vor und nach der "Abschaltung" des Filters in ein anderes Blatt schreiben

----- MAKRO 6
Sheets("Log").Cells(x, 6) = Now()
    
ActiveSheet.ShowAllData

x = x + 1
Sheets("Log").Cells(x, 6) = Now()
----- 
----- MAKRO 7
Sheets("Log").Cells(x, 6) = Now()
    
ActiveSheet.Range("$A$1:$U$23822").AutoFilter Field:=13
ActiveSheet.Range("$A$1:$U$23822").AutoFilter Field:=14

x = x + 1
Sheets("Log").Cells(x, 6) = Now()
-----

So sieht es kurz nach dem Öffnen der Tabelle aus:
08.11.20 07.58.00
08.11.20 07.58.00     6 (0 Sekunden) 
08.11.20 08.00.41
08.11.20 08.00.41     7 (0 Sekunden)

und so einen Tag später:
09.11.20 09.59.16
09.11.20 09.59.22     6 (6 Sekunden)
09.11.20 09.59.36
09.11.20 09.59.36     7 (0 Sekunden)

Ich habe jetzt schon etliche Artikel zu "ShowAllData" gelesen, aber keinen Hinweise wodurch dieses Problem entsteht gefunden :20:

Grüße von Nobby1805
Hallo,

6 Sekunden? Ich kenne noch Zeiten, da war man glücklich wenn man eine Liste mit 200 Datensätzen in 6 Minuten sortiert bekam.
6 Sekunden wären ja noch kein Problem, etliche Minuten schon ...
Hallöchen,

- hast Du mal die Berechnung auf manuell gestellt?
--> ggf. in "alten" Bereichen Formeln durch Werte ersetzen
- manchmal bekommt eine Datei einen Treffer - besteht das Problem nur in einer Datei, wenn die anderen nicht geöffnet werden?
--> Datei ggf. neu aufsetzen
- wurde vielleicht was geändert, sind Bereiche für bedingte Formatierungen stark fragmentiert ...?
--> Fragmentierung aufheben
- füllt sich Dein System langsam?
--> Manchmal hilft eine Leerung temporärer Verzeichnisse bzw. Löschung temporärer Daten

Wobei das allgemeine Hinweise sind und nicht unbedingt was mit dem konkreten Problem zu tun haben muss.
Ansonsten, bei den beiden Aktionen passiert nicht dasselbe, eventuell hat das entsprechende Auswirkungen Sad ...
(13.11.2020, 13:27)schauan schrieb: [ -> ]Hallöchen,

- hast Du mal die Berechnung auf manuell gestellt?
<<< muss ich mal testen wenn die Laufzeit wieder deutlich erkennbar wird

--> ggf. in "alten" Bereichen Formeln durch Werte ersetzen
<<< was einst Du mit "alten"

- manchmal bekommt eine Datei einen Treffer - besteht das Problem nur in einer Datei, wenn die anderen nicht geöffnet werden? 
<<< das ist etwas schwer zu testen, dann müsste ich ein paar Tage auf die anderen Dateien verzichten ... wenn das Problem auftritt kann ich alle anderen beenden und das Problem tritt weiterhin auf 

--> Datei ggf. neu aufsetzen
<<< die Daten sind teilweise historisch gewachsen, also nicht wieder herstellbar, aber die Daten im betroffenen Blatt können und werden per Makros aus externen Textdateien neu erstellt

- wurde vielleicht was geändert, sind Bereiche für bedingte Formatierungen stark fragmentiert ...?
<<< in der Datei gibt es keine bedingte Formatierung

--> Fragmentierung aufheben
- füllt sich Dein System langsam?
--> Manchmal hilft eine Leerung temporärer Verzeichnisse bzw. Löschung temporärer Daten
<<< nein, wenn das Problem auftritt hilft es sofort die Datei zu schließen und wieder neu zu öffnen

Wobei das allgemeine Hinweise sind und nicht unbedingt was mit dem konkreten Problem zu tun haben muss.
Ansonsten, bei den beiden Aktionen passiert nicht dasselbe, eventuell hat das entsprechende Auswirkungen Sad 
Hallo schauan,
Danke für die Hinweise ... ich habe mal meine Kommentare dazu  direkt oben reingeschrieben und mit <<< markiert

Ätzend ist es ja nur wenn nach mehreren Minuten die Tabelle immer noch hängt, nach >10 Minuten schieße ich Excel dann oft ab, und hoffe, dass ich vorher daran gedacht habe zu speichern
Hallöchen,

<<< was einst Du mit "alten"
Daten, die sich nicht mehr ändern ...

<<< die Daten sind teilweise historisch gewachsen, also nicht wieder herstellbar,
die sind doch da, also nix mit wiederherstellen. Kopieren mit mit Werte einfügen in eine neue Datei übertragen ...

Datei und Excel schließen sind zwei unterschiede. Wenn Excel schließen erforderlich ist, kann es auch sein, dass der Speicher voll läuft. Das passiert so etwa bei 1 - 1,2 GB, bei 32 Bit Excel, egal, was das Internet dazu sagt .... Sad (mal abgesehen vom CPU-Wert)
So eine Kopieraktion kann ich ja auch mal versuchen ... leider habe ich die böse Erfahrung gemacht, das manchmal irgendetwas "unsichtbares" mit kopiert wird

und dann will ich mal testen, nur dieses eine Blatt ohne jeden Bezug in eine Testdatei zu kopieren und dann dort nichts ändern, sondern nur ab und zu probieren wie sich filtern und ShowAllData verhalten 

btw. vergessen zu erwähnen: ich verwende Excel 64 Bit, 
und Datei schließen beendet Excel wenn nur diese eine Datei offen ist
Hallo,

von der 64 Bit-Version hört man ja nicht viel gutes.
Hallöchen,

Zitat: leider habe ich die böse Erfahrung gemacht, das manchmal irgendetwas "unsichtbares" mit kopiert wird

deswegen nehme ich in der Regel nur Werte einfügen und Formeln einfügen.
Alles andere wie Formate, benannte Bereiche, Tabellen usw. erstelle ich entweder per Hand neu oder ich nehme ein Makro dazu.
(13.11.2020, 16:22)Klaus-Dieter schrieb: [ -> ]Hallo,

von der 64 Bit-Version hört man ja nicht viel gutes.
Leider habe ich eine Anwendung, die die 64 Bit-Version benötigt ... aber das bringt mich auf eine Idee, ich habe noch einen anderen Rechner auf dem Excel 32 läuft, da muss ich das "Problem" dort mal testen
Seiten: 1 2