根据条件从列表中删除重复项

时间:2019-01-17 17:37:08

标签: excel vba duplicates

我在excel中有一个供应商的excel列表,我希望Excel根据以下条件将我的供应商一式两份地删除(在A列中):在E列上,如果它写为“ FALSE”,并且excel发现对于重复的供应商(在A列中),excel应删除E列中写为“ FALSE”的重复项,而在E列中只保留其写为“ TRUE”的重复项。

如果有人知道该怎么做,那就太好了(无论是否使用VBA)

enter image description here

2 个答案:

答案 0 :(得分:2)

尝试

Sub Test()

    Dim LastRow As Long
    Dim Vendors As Range

    LastRow = Cells(1, 1).End(xlDown).Row
    Set Vendors = Range(Cells(2, "A"), Cells(LastRow, "A"))

    For i = 2 To LastRow
        If WorksheetFunction.CountIf(Vendors, Cells(i, "A").Value) > 1 Then
            If Cells(i, "E") = False Then
                Cells(i, "E").EntireRow.Delete
                i = i - 1
            End If
        End If
    Next i

End Sub

答案 1 :(得分:0)

一种可能的解决方法是将“ FALSE”供应商复制到另一张纸上,然后在其中进行“删除重复项”(“数据”->“数据工具”->“删除重复项”)。然后,您将结果复制回去。如果您担心供应商的订单,请将其排名第一。