Löschen doppelter Einträge in einem Bereich

Im folgenden Beispiel wird gezeigt, wie doppelte Einträge anhand eines Datenbereichs in Spalte A gelöscht werden. In diesem Beispiel wird die AdvancedFilter-Methode des Range-Objekts mit dem Unique-Parameter true verwendet, um die eindeutige Liste der Daten abzurufen. DerAction-Parameter entspricht xlFilterInPlace und gibt an, dass die Daten direkt gefiltert werden. Wenn Sie Ihre ursprünglichen Daten beibehalten möchten, legen Sie den Action-Parameter auf xlFilterCopy fest, und geben Sie den Speicherort an, an den die gefilterten Daten im ParameterCopyToRange kopiert werden sollen. Nachdem die eindeutigen Werte gefiltert wurden, verwendet dieses Beispiel die SpecialCells -Methode des Range -Objekts, um verbleibende leere Zeilen zu suchen und diese zu löschen.

Beispielcode bereitgestellt von: Tom Urtis, Atlas Programming Management

Sub DeleteDuplicates()
    With Application
        ' Turn off screen updating to increase performance
        .ScreenUpdating = False
        Dim LastColumn As Integer
        LastColumn = Cells.Find(What:="*", After:=Range("A1"), SearchOrder:=xlByColumns, SearchDirection:=xlPrevious).Column + 1
        With Range("A1:A" & Cells(Rows.Count, 1).End(xlUp).Row)
            ' Use AdvanceFilter to filter unique values
            .AdvancedFilter Action:=xlFilterInPlace, Unique:=True
            .SpecialCells(xlCellTypeVisible).Offset(0, LastColumn - 1).Value = 1
            On Error Resume Next
            ActiveSheet.ShowAllData
            'Delete the blank rows
            Columns(LastColumn).SpecialCells(xlCellTypeBlanks).EntireRow.Delete
            Err.Clear
        End With
        Columns(LastColumn).Clear
        .ScreenUpdating = True
    End With
End Sub

Über den Autor

MVP Tom Urtis ist Gründer von Atlas Programming Management, einem im Silicon Valley ansässigen Full-Service-Unternehmen, das Microsoft Office- und Excel-Unternehmenslösungen entwickelt. Tom Urtis hat mehr als 25 Jahre Erfahrung in Unternehmensführung und der Entwicklung von Microsoft Office-Anwendungen und ist Mitautor von „Holy Macros! It's 2,500 Excel VBA Examples“.

Support und Feedback

Haben Sie Fragen oder Feedback zu Office VBA oder zu dieser Dokumentation? Unter Office VBA-Support und Feedback finden Sie Hilfestellung zu den Möglichkeiten, wie Sie Support erhalten und Feedback abgeben können.