Jeder muss zu der einen oder anderen Zeit doppelte Einträge aus einer Liste von Texteinträgen löschen. Angenommen, Sie haben die Textwerte in Spalte A eines Arbeitsblatts und sie werden für ungefähr 500 Zeilen ausgeführt. Wenn Sie Duplikate in der Liste löschen möchten, suchen Sie möglicherweise nach dem einfachsten Weg, dies zu tun. Es gibt tatsächlich mehrere Möglichkeiten, wie Sie diese Aufgabe in Excel ausführen können.

Verwenden des Tools zum Löschen von Duplikaten

Die vielleicht einfachste Methode besteht darin, die Daten auszuwählen, aus denen Sie Duplikate löschen möchten, und dann die Registerkarte Daten des Menübands anzuzeigen. Klicken Sie in der Gruppe Datentools auf das Werkzeug Duplikate entfernen. Excel zeigt das Dialogfeld Duplikate entfernen an.

Das Tolle am Dialogfeld „Duplikate entfernen“ ist, dass es die Namen jeder Spalte in Ihren Daten auflistet. (Das Tool geht davon aus, dass sich in der ersten Zeile Ihrer Daten Überschriftenbeschriftungen befinden.) Anschließend können Sie sicherstellen, dass neben jeder Spalte, die auf Duplikate überprüft werden soll, ein Häkchen angezeigt wird. Wenn Sie auf die Schaltfläche OK klicken, werden Ihre Daten analysiert und die doppelten Zeilen entfernt. (Auch hier werden Duplikate anhand der im Dialogfeld „Duplikate entfernen“ ausgewählten Spalten ermittelt.)

Verwenden der Datenfilterung

Eine andere manuelle Methode ist die Verwendung der Datenfilterung, um die eindeutigen Werte zu bestimmen. Stellen Sie sicher, dass die Spalte oben eine Beschriftung hat, und wählen Sie dann eine Zelle in der Spalte aus. Zeigen Sie die Registerkarte Daten des Menübands an und klicken Sie in der Gruppe Sortieren & Filtern auf Erweitert. Verwenden Sie die Steuerelemente im resultierenden Dialogfeld, um anzugeben, dass Sie die eindeutigen Werte an einen anderen von Ihnen angegebenen Speicherort kopieren möchten.

Verwenden einer Formel

Sie können auch eine Formel verwenden, um die Duplikate in der Liste manuell zu bestimmen. Sortieren Sie die Werte in der Spalte und geben Sie die folgende Formel in Zelle B2 ein:

=IF(A2=A1,"Duplicate","")

Kopieren Sie die Formel in alle Zellen in Spalte B, die einen entsprechenden Wert in Spalte A haben. Wählen Sie alle Werte in Spalte B aus und drücken Sie Strg + C. Verwenden Sie Paste Special, um nur die Werte in dieselben ausgewählten Zellen einzufügen. Sie haben jetzt die Formeln in ihre Ergebnisse konvertiert.

Sortieren Sie die beiden Spalten nach dem Inhalt von Spalte B, und alle Ihre doppelten Zeilen befinden sich in einem Bereich. Löschen Sie diese Zeilen, und Sie haben Ihre fertige Liste eindeutiger Werte.

Verwenden eines Makros

Die manuellen Ansätze sind schnell und einfach. Wenn Sie jedoch routinemäßig doppelte Werte aus einer Spalte löschen müssen, ist ein Makro möglicherweise eher Ihr Stil.

Das folgende Makro basiert auf der Datenfilterung, ähnlich wie die frühere manuelle Methode:

Sub CreateUniqueList()

Dim rData As Range     Dim rTemp As Range

Set rData = Range(Range("a1"), Range("A1048576").End(xlUp))

rData.EntireColumn.Insert     Set rTemp = rData.Offset(0, -1)

rData.AdvancedFilter _         Action:=xlFilterCopy, _         CopyToRange:=rTemp, _         Unique:=True

rTemp.EntireColumn.Copy _         rData.EntireColumn     Application.CutCopyMode = False     rTemp.EntireColumn.Delete     Set rData = Nothing     Set rTemp = Nothing End Sub

Das Makro erstellt eine temporäre Spalte, kopiert die eindeutigen Werte mithilfe der erweiterten Filterung in diese Spalte und löscht dann die ursprüngliche Datenspalte.

Das Ergebnis sind nur eindeutige Werte in Spalte A. Wenn Sie nicht möchten, dass Ihr Makro die Datenfilterfunktion von Excel verwendet, reicht das folgende viel kürzere Makro aus:

Sub RemoveDups()

Dim rData As Range

Set rData = Range(Range("a1"), Range("A1048576").End(xlUp))

rData.RemoveDuplicates Columns:=Array(1), Header:=xlYes End Sub

Der Schlüssel in diesem Makro verwendet die RemoveDuplicates-Methode, die auf einem Array basiert, das die Spaltennummern enthält, die Sie auf Duplikate prüfen möchten. Das hier gezeigte Makro verarbeitet nur den Inhalt von Spalte A, aber Sie können es leicht ändern, um Daten in mehr als einer einzelnen Spalte zu bearbeiten. Alles, was Sie tun müssen, ist, rData so zu ändern, dass es den größeren Datenbereich darstellt, und dann den Spaltenparameter so zu ändern, dass er auf die Spalten zeigt, die überprüft werden sollen:

rData.RemoveDuplicates Columns:=Array(1,4), Header:=xlYes

Ein weiterer makrobasierter Ansatz besteht darin, einen eigenen Code zu entwickeln, um die Werte im Datensatz auf folgende Weise zu überprüfen:

Sub DelDups()

Dim rngSrc As Range     Dim NumRows As Integer     Dim ThisRow As Integer     Dim ThatRow As Integer     Dim ThisCol As Integer     Dim J As Integer, K As Integer

Application.ScreenUpdating = False     Set rngSrc = ActiveSheet.Range(ActiveWindow.Selection.Address)



NumRows = rngSrc.Rows.Count     ThisRow = rngSrc.Row     ThatRow = ThisRow + NumRows - 1     ThisCol = rngSrc.Column

'Start wiping out duplicates     For J = ThisRow To (ThatRow - 1)

If Cells(J, ThisCol) > "" Then             For K = (J + 1) To ThatRow                 If Cells(J, ThisCol) = Cells(K, ThisCol) Then                     Cells(K, ThisCol) = ""

End If             Next K         End If     Next J

'Remove cells that are empty     For J = ThatRow To ThisRow Step -1         If Cells(J, ThisCol) = "" Then             Cells(J, ThisCol).Delete xlShiftUp         End If     Next J     Application.ScreenUpdating = True End Sub

Das Makro bearbeitet eine Auswahl, die Sie vor dem Aufruf treffen. Wenn Sie also doppelte Zellen aus dem Bereich A2: A974 entfernen müssen, wählen Sie einfach diesen Bereich aus und führen Sie das Makro aus. Wenn das Makro vollständig ist, werden die doppelten Zellen sowie alle leeren Zellen entfernt.

_Hinweis: _

Wenn Sie wissen möchten, wie die auf dieser Seite (oder auf einer anderen Seite der ExcelTips-Websites) beschriebenen Makros verwendet werden, habe ich eine spezielle Seite vorbereitet, die hilfreiche Informationen enthält.

ExcelTips ist Ihre Quelle für kostengünstige Microsoft Excel-Schulungen.

Dieser Tipp (12711) gilt für Microsoft Excel 2007, 2010, 2013, 2016, 2019 und Excel in Office 365. Eine Version dieses Tipps für die ältere Menüoberfläche von Excel finden Sie hier: