Doppelte Zeilen in Exceltabelle finden

Hallo zusammen!
Ich habe eine 1200 zeilige Tabelle mit 15 Spalten.
Ich möchte doppelte Zeilen löschen.
Habe schon versucht über Daten filtern Spezialfilter zu einem Ergebnis zu kommen. Das funktioniert aber nicht so richtig.
Gibt es eine Möglichkeit über Wenn, Vergleichsfunktionen oder VBA zu einem gewünschten Ergebnis zu kommen.
Ich danke für die Info!
amauer

Hallo amauer,

hier mal eine Lösung mit VBA (kann ich besser als mit Formeln):
Voraussetzung ist, dass die 16. Spalte (also die hinter deiner letzten Spalte) frei ist. Hier wird nämlich eingetragen, welche Zeilen identisch sind.

Kopiere folgenden Code in den Codebereich deiner Tabelle:

Option Explicit

Dim s1 As Long

Sub doppelte()
 Dim letzte As Long
 Dim z1 As Long, z2 As Long

 z1 = ActiveCell.Row
 s1 = ActiveCell.Column
 letzte = Cells(65535, s1).End(xlUp).Row
 While z1 

Dann gehe in deine Tabelle und aktiviere die erste deiner Zellen (links oben). Das habe ich eingebaut, weil ich nicht weiß, ob deine Daten bei A1 oder woanders beginnen.
Jetzt starte den Makro "doppelte", entweder über Alt-F8 oder über Extras-Makro-Makros...

Bei mir (Pentium4, XP SP3, Excel2003) hat es für 1200 Zeilen ca. 30 sek. gedauert.
Bestimmt findet sich hier aber noch ein Formel-Experte, der das ohne VBA lösen kann. Das läuft sicher schneller.

Gruß, Andreas

Ich möchte doppelte Zeilen löschen.
Gibt es eine Möglichkeit über Wenn, Vergleichsfunktionen oder
VBA zu einem gewünschten Ergebnis zu kommen.

Hallo amauer,

schreib in P1:
=A1&"#"&B1&"#"&C1&"#"&D1&"#"&E1…
schreib in Q1:
=Zählenwenn(…)>1
Beide Formelzellen nach unten kopieren dann alle Spalten nach Q
sortieren. Inhalte von P und q löschen.

Gruß
Reinhard

ich wusst’s doch …
dass es mit Formeln besser geht.
Saugut!

Gruß, Andreas

Hallo Amauer,

ich bin 'ne faule Socke :smile:
Die Formel ist mir zu lang um sie manuell zu tippseln, nochdazu
ist das Fehleranfällig.

Nimm ein leeres Blatt, schrib in A1
A1
und in B1
=A1&"&""#""&"&ADRESSE(1;SPALTE();4)
und kopiere das nach rechts bis zur 15.ten Spalte.
Dann kopiere die letzte Zelle und über InhalteEinfügen fügst du Werte
ein. Noch ein Gleichheitszeichen davor…

@Andreas: Auf jeden Fall, grad in Fällen wo man viele Zellen in einem
Bereich per Vba einzeln „abklappern“ muß sind eingebaute Excel-
Funktionen k.A. 1000mal oder mehr schneller.

Ein Grund dafür ist sicher unter anderen auch daß
in Vba nur 'ne Winzigkeit kompiliert wird, der Rest wird zur Laufzeit
interpretiert.

Gruß
Reinhard
schneller.