Excel: Zeilen mit doppeltem Inhalt filtern

  • #1
O

OllyNet

Aktives Mitglied
Themenersteller
Dabei seit
03.03.2002
Beiträge
27
Reaktionspunkte
0
Ort
Lippe Detmold
Hallo
in einer großen Excel Tabell mit 50.000 Zeilen habe ich in der ersten Spalte Inhalte, die teilweise dopplet vorkommen.
Wie kann ich diese doppelten Zeilen herausfiltern ?
Danke für jeden Tip

OllyNet
 
  • #2
Hi OllyNet,

wie hättest Du es den gern ?

Darf die Tabelle vorher nach der 1. Spalte sortiert werden?

Sollen doppelte Datensätze (Zeilen) gelöscht oder nur farblich gekennzeichnet werden?

Welches ist der Satz der übrigbleiben soll, der erste, der letzte oder anderes Kriterium?

Gruß Matjes :)

Als Anlage zwei Makros, die die doppelten Werte rot kennzeichnen - einmal mit und einmal ohne Sortieren.
Bei der großen Datei dauert der Makro ohne Sortieren etwas länger.
Die erste Zeile mit Wert (Const c_ersteZeile_mitWert = 2 ) ist ggf. anzupassen.

Code:
Option Explicit


Sub Erste_Spalte_DoppelteWerte_suchen_ohne_Sort()
'bei Ausführung des Makros muß das zu untersuchende Blatt aktiviert sein
  Const c_ersteZeile_mitWert = 2->anpassen !!!!!!!
  Const c_Spalte = 1
  Dim ws As Worksheet, l_Rows As Long, z1 As Long, z2 As Long
    
  Set ws = ActiveSheet
  l_Rows = ws.Cells(Rows.Count, 1).End(xlUp).Row
  For z1 = c_ersteZeile_mitWert To l_Rows - 1
   ->leere Werte nicht vergleichen
    If ws.Cells(z1, c_Spalte).Value <>  Then
      For z2 = z1 + 1 To l_Rows
        If ws.Cells(z1, c_Spalte).Value = ws.Cells(z2, c_Spalte).Value Then
         ->doppelten Wert Rot hinterlegen
          ws.Cells(z2, c_Spalte).Interior.ColorIndex = 3
        End If
      Next
    End If
  Next
End Sub

'*******************************************************

Sub Erste_Spalte_DoppelteWerte_suchen_mit_Sort()
'bei Ausführung des Makros muß das zu untersuchende Blatt aktiviert sein
  Const c_ersteZeile_mitWert = 2->anpassen !!!!!!!
  Const c_Spalte = 1
  Dim ws As Worksheet, l_Rows As Long, z1 As Long, z2 As Long
    
  Set ws = ActiveSheet
  
 ->nach erster Spalte sortieren
  ws.Select
  Selection.Sort _
    Key1:=Range(Cells(1, c_Spalte), Cells(1, c_Spalte)), Order1:=xlAscending, _
    Header:=xlYes, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom

  l_Rows = ws.Cells(Rows.Count, 1).End(xlUp).Row
  For z1 = c_ersteZeile_mitWert To l_Rows - 1
   ->leere Werte nicht vergleichen
    If ws.Cells(z1, c_Spalte).Value <>  Then
      For z2 = z1 + 1 To l_Rows
        If ws.Cells(z1, c_Spalte).Value = ws.Cells(z2, c_Spalte).Value Then
         ->doppelten Wert Rot hinterlegen
          ws.Cells(z2, c_Spalte).Interior.ColorIndex = 3
        Else
          Exit For
        End If
      Next
    End If
  Next
End Sub
 
Thema:

Excel: Zeilen mit doppeltem Inhalt filtern

ANGEBOTE & SPONSOREN

Statistik des Forums

Themen
113.839
Beiträge
707.962
Mitglieder
51.492
Neuestes Mitglied
Janus36
Oben