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

RemoveDuplicates beschleinigen?

RemoveDuplicates beschleinigen?
12.11.2020 23:48:10
Patrick
Hallo alle Zusammen,
ich wollte mal fragen, ob man RemoveDuplicates irgendwie beschleunigen kann?
Ich durchsuche 26.000 Zeilen, vergleiche Zellen, Arrays, nutze VLookUps und was weiß ich alles. Aber mein ganzes Script über 26.000 Zeilen läuft schneller als dieser einzige Befehl, der "nur" bei etwa 2.500 Ergebnissen die Duplikate löschen soll....
Gibt es einen Weg das zu beschleunigen?
Mein verwendeter Code:
' Jetzt erst einmal die doppelten Ids löschen
Tabelle4.Range("A:B").RemoveDuplicates Columns:=1, Header:=xlYes

Beim Schrieben kommt mir ebeneine Idee:
Würde es etwas bringen, die Spalte 1 erst zu sortieren? Geht es dann schneller?
Ich probiere das mal...
Trotzdem:
Vielleicht gibt es ja eine Turbo-DeleteDuplicates-Lösung...
Lieben Gruß
an alle
Patrick

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: RemoveDuplicates beschleinigen?
12.11.2020 23:54:35
Daniel
Hi
Remove Duplicates ist eigentlich schon turbo.
Könnte höchsten sein, dass deine Usedrange das komplette Blatt umfasst.
Gib mal den Zellbereich möglichst exakt vor: Range("A1:B30000").RemoveDuplicates.
Vermutlich liegts daran.
Gruß Daniel
AW: RemoveDuplicates beschleinigen?
13.11.2020 00:43:29
Patrick
Moin Daniel,
aht leider nicht geklappt.
Habe es mal auf die maximale Anzahl (A2:B25000) festgelegt und dann dauert es noch länger.
Jemand eine andere Idee, wie man das beschleunigen kann?
AW: RemoveDuplicates beschleinigen?
13.11.2020 08:31:16
Daniel
Hi
Bist du sicher, dass es am RemoveDuplicates liegt?
Hast du vielleicht aktive Formeln, die aufgrund der Änderung neu berechnet werden und die Zeit brauchen?
Ansonsten ist folgendes bei sehr großen Datenmengen schneller:
1. Liste so sortieren, dass Duplikate direkt untereinander stehen
2. in Hilfsspalte die zu löschenden Zeilen kennzeichnen
3. Liste nach Hilfsspalte sortieren
4. die markierten Zeilen als Block löschen.
Gruß Daniel
Anzeige
AW: RemoveDuplicates beschleinigen?
13.11.2020 08:37:14
Werner
Hallo,
an RemoveDuplicates liegt es mit ziemlicher Sicherheit nicht - das ist wahnsinnig schnell.
Schon mal versucht die Bildschirmaktualisierung, die Formelberechnung und ggf. die Events vorher aus und danach wieder einzuschalten?
Also:
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
Application.EnableEvents = False
Tabelle4.Range("A:B").RemoveDuplicates Columns:=1, Header:=xlYes
Application.Calculation = xlCalculationAutomatic
Application.EnableEvents = True
Gruß Werner

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige