📌  相关文章
📜  如何在两列中知道excel中的重复项-无论(1)

📅  最后修改于: 2023-12-03 15:09:00.373000             🧑  作者: Mango

如何在两列中知道Excel中的重复项 - 无论

在Excel中,我们经常需要检查两个列中是否存在重复项。这对于查找数据中的重复项或重复数据很有用。那么,该如何在两列中知道Excel中的重复项呢?本篇文章将向程序员介绍如何使用VBA和公式两种方法。

使用VBA方法
第一步:打开宏编辑器

点击开发菜单下的“Visual Basic”按钮,打开VBA编辑器。

第二步:新建宏

点击VBA编辑器中的“插入”菜单的“模块”选项。

第三步:编写程序

在新建的模块中输入以下代码:

Sub FindDuplicates()
    Dim col1 As Range, col2 As Range, cell As Range, rng As Range
    Dim dict As Object, result As Variant, i As Long
    
    Set col1 = Range("A1:A" & Cells(Rows.Count, 1).End(xlUp).Row)
    Set col2 = Range("B1:B" & Cells(Rows.Count, 2).End(xlUp).Row)
    Set dict = CreateObject("Scripting.Dictionary")
    
    For Each cell In col1
        If cell.Value <> "" Then
            dict(cell.Value) = 1
        End If
    Next
    
    For Each cell In col2
        If cell.Value <> "" Then
            If dict.Exists(cell.Value) Then
                dict(cell.Value) = 2
            End If
        End If
    Next
    
    For Each key In dict.Keys
        If dict(key) = 2 Then
            i = i + 1
            If i = 1 Then
                Set rng = Range("C1")
                rng.Value = key
            Else
                Set rng = Range("C" & i)
                rng.Value = key
            End If
        End If
    Next
    
    result = MsgBox("已找到 " & i & " 个重复项!是否跳转至结果?", vbYesNo, "FindDuplicates")
    If result = vbYes Then
        Range("C1:C" & i).Select
    End If
    
End Sub

该程序将在第三列中列出第一列和第二列中的重复项。

第四步:执行程序

回到Excel界面,选中宏按钮,然后运行 “FindDuplicates” 宏。程序将会计算两列中的重复数据,并在第三列中列出结果。

使用公式方法
第一步:新建一列

在Excel中,新建一列,列名为“重复项”。

第二步:编写公式

在“重复项”列的第一行,输入以下公式:

=IF(COUNTIF(A:A,B1)>0,B1,"")

然后将公式应用于“重复项”列的整个范围。

第三步:筛选数据

使用筛选来查看“重复项”列的数据。所有包含重复项的行将会在筛选的结果中显示出来。

第四步:统计重复项

使用COUNTIF函数来计算重复项的数量。在“重复项”列下方空出一行,并在该行中输入以下公式:

=SUM(IF(FREQUENCY(C2:C11,C2:C11)>0,1))

然后按Ctrl+Shift+Enter键(表示数组公式),计算出重复项数量。

以上就是两种方法来在Excel中查找两列中的重复项。VBA方法可以快速地计算出重复项,并将结果显示在Excel中。公式方法则适用于轻量级的应用场景并且使用较为简单。