Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Doppelte Daten löschen

Forumthread: Doppelte Daten löschen

Doppelte Daten löschen
13.02.2009 19:09:00
Fritz
Schönen Abend
mit folgenden Code den ich dankenswerter weise im Forum bekommen habe lösche ich doppelte Datensätze
ActiveSheet.Range("$A$2:$z$1000").RemoveDuplicates Columns:=Array(1, 2, 3, 4, 5, 6), Header:=xlNo
Das funktioniert im Office 2007 einwandfrei
auf einem Rechner mit Office 2003 bekomme ich jedoch den Laufzeitfehler 438 Objekt unterstützt die Methode nicht. Kann wir bitte wer weiterhelfen oder einen anderen Code zukommen lassen?
Danke
Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: Doppelte Daten löschen
13.02.2009 19:36:00
Weis
Vielleicht probierst du das mal:

Sub doppeltekill()
Dim iRow As Integer, iRowL As Integer
iRowL = Cells(Cells.Rows.Count, 3).End(xlUp).Row
For iRow = iRowL To 1 Step -1
If WorksheetFunction.CountIf(Columns(1), Cells(iRow, 1)) > 1 Then
Rows(iRow).Delete
End If
Next iRow
End Sub


Grüße

Anzeige
AW: Doppelte Daten löschen
13.02.2009 19:37:00
Weis
Probier das mal. Funktioniert bei mir super

Sub doppeltekill()
Dim iRow As Integer, iRowL As Integer
iRowL = Cells(Cells.Rows.Count, 3).End(xlUp).Row
For iRow = iRowL To 1 Step -1
If WorksheetFunction.CountIf(Columns(1), Cells(iRow, 1)) > 1 Then
Rows(iRow).Delete
End If
Next iRow
End Sub


Anzeige
hier noch eine Version...
13.02.2009 20:37:00
Tino
Hallo,
, es wird nach doppelten Daten in Spalte A bis F gesucht.
Die letzten zwei spalten werden für Formeln benötigt,
diese werden am Schluss wieder gelöscht.
Sub LoescheDoppelte()
Dim Bereich As Range
Dim LRow As Long

LRow = Cells.Find("*", , xlValues, 1, 1, xlPrevious, False, False).Row
Set Bereich = Range("A2:A" & LRow)
Set Bereich = Bereich.Offset(0, Columns.Count - Bereich.Column - 1)

With Application
 .ScreenUpdating = False
 .EnableEvents = False
  
  
    Bereich.FormulaR1C1 = "=CONCATENATE(RC1,RC2,RC3,RC4,RC5,RC6)"
    Bereich.Offset(0, 1).FormulaR1C1 = "=IF(COUNTIF(RC[-1]:R[15]C[-1],RC[-1])>1,0,"""")"
  
    If .WorksheetFunction.CountIf(Bereich.Offset(0, 1), 0) > 0 Then
     Bereich.Offset(0, 1).SpecialCells(xlCellTypeFormulas, 1).EntireRow.Delete
    End If
  
   Range(Bereich, Bereich.Offset(0, 1)).EntireColumn.Delete
    
  
 .ScreenUpdating = False
 .EnableEvents = False
End With
End Sub


Gruß Tino

Anzeige
;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige