Doppelte Werte in mehreren Spalten eliminieren

Hallo zusammen,

wie man bei einer Spalte die doppelten Werte eliminiert ist klar.
ICh habe aber ein Tabellenblatt mit acht spalten und nur eine davon soll von den doppelten werten bereingit werden, aber hjeweils die ganze Zeile dazu

BSP Spalte 1 ist diejenige, die bereinigt werden soll
alte Liste neue Liste
a 1 2 3 a 1 2 3
b 4 5 6 b 4 5 6
a 1 2 3 c 11 12 13
c 11 12 13

kann mir da jemand mit VBA weiterhelfen, wie gesagt wenn ich nur die Spalte 1 hättte wüsste ich wie es geht.

Danke und Gruß

slam

Hallo,
Excel2007 bietet dir eine Fertige Funktion an:
Daten >Duplikate entfernen

Mit Makros habe ich es nicht so, da benutze ich dann gerne mal den Makro-Rekorder und schau mir das an.

Bei mir sieht das dann so aus:
ActiveSheet.Range("$A$2:blush:D$100").RemoveDuplicates Columns:=1, Header:=xlNo

Gruß Holger

ICh habe aber ein Tabellenblatt mit acht spalten und nur eine
davon soll von den doppelten werten bereingit werden, aber
hjeweils die ganze Zeile dazu

BSP Spalte 1 ist diejenige, die bereinigt werden soll
alte Liste neue Liste
a 1 2 3 a 1 2 3
b 4 5 6 b 4 5 6
a 1 2 3 c 11 12 13
c 11 12 13

kann mir da jemand mit VBA weiterhelfen, wie gesagt wenn ich
nur die Spalte 1 hättte wüsste ich wie es geht.

Hallo Slam,

dein Beispiel ist mir zuwenig eindeutig.
Wie sieht denn diese „alte“ Liste bereinigt aus:

a 1 2 3
b 5 6 7
a v b h
c 3 5 8

Gruß
Reinhard

Hallo Reinhard,

die Tabelle würde meines Wissens so aus sehen
a 1 2 3
b 5 6 7
c 3 5 8

d.h. Excel wird nur die erste zeile stehen lassen, die 2. gleiche Zeile sollte excel dann eliminieren

Ich bin aber schon ein wenig weiter mit folgender Lösung
Range(tab1.Cells(8, 27), tab1.Cells(j, 38)).AdvancedFilter _
action:=xlFilterCopy, CriteriaRange:=Range(tab1.Cells(8, 36), tab1.Cells(j, 36)), _
copyToRange:=Range(tab1.Cells(8, 2), tab1.Cells(j, 13)), Unique:=True

Zur erklärung j ist die letzte benutzte Zeile in dem Bereich wo die ungefiltereten Daten stehen (Zeile 8 bis J, Spalte 27 bis 38)
Die gefilterten sollten dann in den Zeilen 8 bis x und Spalten 2 bis 13 stehen)

Danke und Gruß

slam

Nachtrag
Komischerweise macht excel nun das richtige, aber die letzte Zweile ist immer noch identisch mit der ersten und diesen doppelten Wert schmeisst excel nicht raus *wunder*

Ich bin aber schon ein wenig weiter mit folgender Lösung
Range(tab1.Cells(8, 27), tab1.Cells(j, 38)).AdvancedFilter _
action:=xlFilterCopy, CriteriaRange:=Range(tab1.Cells(8, 36),
tab1.Cells(j, 36)), _
copyToRange:=Range(tab1.Cells(8, 2), tab1.Cells(j, 13)),
Unique:=True

Zur erklärung j ist die letzte benutzte Zeile in dem Bereich
wo die ungefiltereten Daten stehen (Zeile 8 bis J, Spalte 27
bis 38)
Die gefilterten sollten dann in den Zeilen 8 bis x und Spalten
2 bis 13 stehen)

Danke und Gruß

slam