Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
720to724
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
720to724
720to724
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

mehrfach vorkommende Einträge komplett löschen

mehrfach vorkommende Einträge komplett löschen
19.01.2006 13:40:17
front0708
Hallo Forum,
ich muss eine Tabelle mit ca. 10.000 Einträgen auf doppelte bzw. mehrfache Einträge überprüfen und komplett löschen.
Das heißt, wenn in A1, A2 und A3 identische Angaben stehen, dann sollen alle drei Zeilen komplett gelöscht werden.
Mit Dubletten entfernen komme ich also nicht weiter.
Wer weiß Hilfe ?
Vielen Dank
front0708

19
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: mehrfach vorkommende Einträge komplett löschen
19.01.2006 13:45:17
Hajo_Zi
Hallo Hans Bärbel,
Doppelte Löschen
angenommen Deine Daten stehen in A1 bis A?
Bereich markieren = Spalte A anklicken (evtl. eine Leerzeile vorher einfügen)
Daten / Filter / Spezialfilter
keine Duplikate
jetzt kannst du noch einstellen, ob an gleicher Stelle oder woanders placiert; hier also B1 eingeben
Spalte A anschließend löschen
Bei mehreren Spalten, muss die Liste eine Überschrift haben, am besten fett formatiert, dann erkennt Sie auch Excel als Überschrift.

AW: mehrfach vorkommende Einträge komplett löschen
19.01.2006 13:49:33
Dr.
Es sollen alle gleichen gelöscht werden.
AW: mehrfach vorkommende Einträge komplett löschen
19.01.2006 13:50:18
front0708
Hallo Hajo_Zi,
damit bleibt aber ein Eintrag stehen. Es sollen aber alle gelöscht werden, also nicht nur die Dublikate.
Wenn also A1 bis A3 identisch sind, sollen auch A1 bis A3 gelöscht werden.
Weißt Du mehr?
Danke im Voraus
Anzeige
AW: mehrfach vorkommende Einträge komplett löschen
19.01.2006 13:52:52
u_
Hallo,
zählenwenn in eine Hilfsspalte, kopieren, Inhalte einfügen, nach &gt1 filtern und die Zeilen löschen.
Gruß
Geist ist geil!
AW: mehrfach vorkommende Einträge komplett löschen
19.01.2006 13:49:53
u_
Hallo,
lösch alle Zeilen mit Duplikaten in der markierten Spalte:

Sub doppelte_loeschen2()
Dim iCol As Integer, i As Long
Application.ScreenUpdating = False
iCol = Selection.Column
For i = Cells(65536, iCol).End(xlUp).Row To 1 Step -1
If WorksheetFunction.CountIf(Columns(iCol), Cells(i, iCol)) > 1 Then
Cells(i, iCol).EntireRow.Delete
End If
Next i
Application.ScreenUpdating = True
End Sub
Gruß
Geist ist geil!
Anzeige
falsch gelesen, ziehe zurück.
19.01.2006 13:51:13
u_
Hallo,
Gruß
Geist ist geil!
AW: mehrfach vorkommende Einträge komplett löschen
19.01.2006 14:54:47
front0708
... ja es hat funktioniert.
Vielen herzlichen Dank an Euch alle und natürlich an Dr. Ihr habt mir gerad etwa 8 Stunden Arbeit erspart.
DANKE !!!
Grüße
Gordon
AW: mehrfach vorkommende Einträge komplett löschen
19.01.2006 15:19:36
Hajo_Zi
Hallo Gordon,
kannst Du mal den Lösungsvorschlag von Dr. Posten. Ich habe ihn nicht gefunden in diesem Beitrag.
Gruß Hajo
AW: mehrfach vorkommende Einträge komplett löschen
19.01.2006 15:50:15
u_
Hallo Hajo,
Dr. hat insofern zur Lösung beigetragen, dass er darauf hingewiesen hat, dass alle Einträge bei mehrfachem Vorkommen gelöscht werden sollen.
Das hatte nämlich bis dahin keiner begriffen. Auch du nicht.
Unterlasse doch in Zukunft diese un- bis blödsinnigen Bemerkungen.
Gruß
Geist ist geil!
Anzeige
AW: mehrfach vorkommende Einträge komplett löschen
19.01.2006 16:07:22
Hajo_Zi
Hallo u_
was ist daran Blödsinn, wenn ich die Lösung von Dr. sehen will. Das Forum ist dazu da um Lösungen auszutauschen.
Gruß Hajo
AW: mehrfach vorkommende Einträge komplett löschen
19.01.2006 16:15:02
front0708
Mensch,
da habe ich ich doch tatsächlich vertan. Die Lösung stammte natürlich von u_ !!
Sorry, Ehre wem Ehre gebührt.
Grüße,
Gordon
Hier noch mal seine Lösung:
~~~~~~~~~~~~~~~~~~~~~~~~~~~

Sub doppelte_loeschen2()
Dim iCol As Integer, i As Long
Application.ScreenUpdating = False
iCol = Selection.Column
For i = Cells(65536, iCol).End(xlUp).Row To 1 Step -1
If WorksheetFunction.CountIf(Columns(iCol), Cells(i, iCol)) > 1 Then
Cells(i, iCol).EntireRow.Delete
End If
Next i
Application.ScreenUpdating = True
End Sub

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Anzeige
AW: mehrfach vorkommende Einträge komplett löschen
19.01.2006 16:26:44
Gerd
Entweder du hast die Aufgabe falsch beschrieben oder der Code macht nicht das, was du willst.
mfg Gerd
AW: mehrfach vorkommende Einträge komplett löschen
19.01.2006 18:45:15
Hajo_Zi
Hallo Hans Bärbel,
ich habe jetzt Zeit und konnte mir den Code jetzt genauer ansehen und ich muß Gerd Recht geben er macht nicht das was u- uns einreden wollte. "Es sollen alle Datensätze gelöscht werden die Doppelt sind. Also es soll keiner von den Doppelten übrig bleiben" Die Variante die Du mit dem Code realisiert hast hättest Du auch ohne VBA realisieren können, siehe mein Vorschlag.
Gruß Hajo
Anzeige
AW: mehrfach vorkommende Einträge komplett löschen
19.01.2006 22:30:12
Hübi
Hallo Hajo,
das war die Frage:
Das heißt, wenn in A1, A2 und A3 identische Angaben stehen, dann sollen alle drei Zeilen komplett gelöscht werden.
Mit Dubletten entfernen komme ich also nicht weiter.

Damit ist für mich klar, dass Spezialfilter schon mal nicht geeignet ist!!!!
Übrigens hat u_ den Vorschlag auch widerrufen.
Ein funktionierender Lösungsvorschlag würde mich allerdings auch interessieren.
Gruß Hübi
AW: mehrfach vorkommende Einträge komplett löschen
20.01.2006 10:32:32
front0708
Ja, schade... ich hatte gehofft, mir bleibt die Arbeit erspart.
Wer weiß, wies geht? ich freue mich über jede Antwort (auch per E-Mail). Kann doch nicht so schwer sein, oder?
Grüße
Gordon
Anzeige
AW: mehrfach vorkommende Einträge komplett löschen
20.01.2006 12:31:38
Hübi
Hi Gordon,
ich habe zwar vorn VBA null Ahnung. Mit diesem Code bleiben jedoch nur die Zeilen übrig, in denen der Wert wirklich nur einmal vorkommt. Alle Zeilen bei Mehrfachvorkommen werden gelöscht.
Vielleicht kann ein VBA-Profi die Dimensionierung des Array noch verbessern.

Sub doppelte_loeschen2()
Dim iCol As Integer, i As Long
Dim Zeile(1000) As Long
Application.ScreenUpdating = False
iCol = Selection.Column
For i = 1 To Cells(65536, iCol).End(xlUp).Row
If WorksheetFunction.CountIf(Columns(iCol), Cells(i, iCol)) > 1 Then
Zeile(i) = i
End If
Next i
For i = 1000 To 1 Step -1
If Zeile(i) <> 0 Then
Cells(Zeile(i), iCol).EntireRow.Delete
End If
Next i
Application.ScreenUpdating = True
End Sub

Gruß Hübi
Anzeige
AW: mehrfach vorkommende Einträge komplett löschen
20.01.2006 20:16:15
Josef
Hallo Gordon!
Ich würde es so machen1
Sub doppelte_loeschen3()
Dim lngRow As Long, lngLast As Long
Dim intCol As Integer
Dim rngDel As Range

intCol = Selection(1).Column
lngLast = Cells(Rows.Count, intCol).End(xlUp).Row

On Error GoTo ErrExit
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual

For lngRow = 1 To lngLast
  If Application.CountIf(Columns(intCol), Cells(lngRow, intCol)) > 1 Then
    If rngDel Is Nothing Then
      Set rngDel = Rows(lngRow)
    Else
      Set rngDel = Union(rngDel, Rows(lngRow))
    End If
  End If
Next

If Not rngDel Is Nothing Then rngDel.Delete

Set rngDel = Nothing

ErrExit:
Application.ScreenUpdating = True
Application.Calculation = xlCalculationAutomatic

End Sub


'******************************
'* Gruß Sepp
'*
'* Rückmeldung wäre nett!
'******************************

Anzeige
AW: mehrfach vorkommende Einträge komplett löschen
20.01.2006 20:16:41
Josef
Hallo Gordon!
Ich würde es so machen1
Sub doppelte_loeschen3()
Dim lngRow As Long, lngLast As Long
Dim intCol As Integer
Dim rngDel As Range

intCol = Selection(1).Column
lngLast = Cells(Rows.Count, intCol).End(xlUp).Row

On Error GoTo ErrExit
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual

For lngRow = 1 To lngLast
  If Application.CountIf(Columns(intCol), Cells(lngRow, intCol)) > 1 Then
    If rngDel Is Nothing Then
      Set rngDel = Rows(lngRow)
    Else
      Set rngDel = Union(rngDel, Rows(lngRow))
    End If
  End If
Next

If Not rngDel Is Nothing Then rngDel.Delete

Set rngDel = Nothing

ErrExit:
Application.ScreenUpdating = True
Application.Calculation = xlCalculationAutomatic

End Sub


'******************************
'* Gruß Sepp
'*
'* Rückmeldung wäre nett!
'******************************

Anzeige
Oups ;-(( o.T.
20.01.2006 20:17:32
Josef
;-)

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige