跳至主要内容

比较两列并在Excel中查找重复项(完整指南)

Author: Xiaoyang Last Modified: 2025-07-31

比较两列以查找重复值

要查找两列之间的重复值,有多种方法可供选择,具体取决于您的需求,例如高亮显示重复项以获得直观概览,或提取它们进行深入分析。在本节中,我们将介绍一些在Excel中快速完成此任务的小技巧。

使用条件格式突出显示两列中的重复项

在Excel中高亮显示两列中的重复项是一种识别重复数据的有效方法,尤其是在手动检查不切实际的大数据集中。在这种情况下,条件格式是一个非常有用的特性来解决这个任务。

步骤1:选择要突出显示重复项的列中的数据

在此示例中,我将选择A2:A10,见截图:
A screenshot showing the selection of column A for highlighting duplicates in Excel

步骤2:应用条件格式功能

  1. 点击“开始” > “条件格式” > “新建规则”,见截图:
    A screenshot showing the Conditional Formatting menu in Excel
  2. 在“新建格式规则”对话框中,请执行以下操作:
    • 2.1 从“选择规则类型”列表框中选择“使用公式确定要设置格式的单元格”;
    • 2.2 在“为此公式为真时设置格式值”文本框中输入以下公式;
      =COUNTIF($B$2:$B$10, A2)>0
    • 注意:在上述公式中,“B2:B10”代表您要对比的数据列表,“A2”是您要从中突出显示重复项的列的第一个单元格。该公式检查A2单元格中的值是否在B列中找到。根据您的数据修改单元格引用。
    • 2.3 然后,点击“格式”按钮。
    • A screenshot of the New Formatting Rule dialog box in Excel for highlighting duplicates
  3. 在弹出的“设置单元格格式”对话框中,指定一种颜色以突出显示重复项。然后点击“确定”。
    A screenshot of the Format Cells dialog box for choosing a highlight color in Excel
  4. 当返回到“新建格式规则”对话框时,点击“确定”按钮。

结果:

现在,A列和B列中重复的值已在A列中突出显示,如下图所示:
A screenshot showing duplicates highlighted in column A using Conditional Formatting in Excel

提示:
  • “条件格式”中的重复规则是“不区分大小写”。因此,Apple和apple都会被标记为重复项。
  • 如果您想从B列中突出显示重复项,只需先选择B列,然后将以下公式应用到“条件格式”中:
    =COUNTIF($A$2:$A$10, B2)>0

使用强大的工具——Kutools选择并突出显示两列中的重复项

有时,您可能不仅需要突出显示,还需要选择重复项以便将其复制并粘贴到工作簿中的其他位置。在这种情况下,“Kutools for Excel”的“选择相同和不同单元格”功能是一个理想的选择。它可以识别重复或唯一的值,并通过突出显示和选择您需要的单元格来实现这一点。

Kutools for Excel 提供了超过 300 种高级功能,简化复杂任务,提升创造力与效率。 通过集成 AI 能力,Kutools 能够精准自动执行任务,让数据管理变得轻松简单。Kutools for Excel 的详细信息...         免费试用...

点击“Kutools” > “选择” > “选择相同和不同单元格”,在“选择相同和不同单元格”对话框中,请执行以下操作:

  1. 分别在“查找值在”和“根据”框中选择源数据和对比数据;
  2. 在“基于”部分下选择“按行”;
  3. 从“查找”部分选择“相同值”;
  4. 在“对选中结果的处理”部分下指定一个背景色以突出显示重复值;
  5. 最后,点击“确定”按钮。
    A screenshot of the Select Same & Different Cells dialog for identifying duplicates

结果:

现在,A列和B列中重复的值已在A列中突出显示并选择,您可以随时将其复制并粘贴到任何所需的单元格中。见截图:
A screenshot showing duplicates highlighted and selected in Excel using Kutools

提示:
  • 当在“选择相同和不同单元格”对话框中勾选“区分大小写”复选框时,此功能支持区分大小写的比较。
  • 如果您想从B列中选择重复项,只需在“选择相同和不同单元格”对话框的“查找值在”和“根据”框中交换两个选定列即可;
  • 要应用此功能,请下载并安装Kutools for Excel

使用公式查找并提取两列中的重复项

要查找并提取两列之间的重复项,可以使用公式来定位并提取重复项。

请将以下公式复制并粘贴到您希望放置结果的空白单元格中,然后向下拖动填充柄以将此公式应用于其他单元格。

=IF(ISERROR(MATCH(A2,$B$2:$B$10,0)),"",A2)

注意:在上述公式中,“A2”是您要从中查找重复项的列的第一个单元格;“B2:B10”代表您要对比的数据列表。

结果:

如您所见,如果A列中的数据存在于B列中,则会显示该值;否则,单元格将保持空白。
A screenshot showing the use of a formula to find and extract duplicates between two columns in Excel

提示:此公式是“不区分大小写”的。

使用VBA代码选择两列中的重复项

本节将指导您完成创建VBA代码的步骤,该代码可识别并选择两列之间的重复值。

步骤1:打开VBA模块编辑器并复制代码

  1. 按下“Alt + F11”键以打开“Microsoft Visual Basic for Applications”窗口。
  2. 在打开的窗口中,点击“插入” > “模块”以创建一个新的空白模块。
  3. 然后,将以下代码复制并粘贴到空白模块中。
    VBA代码:查找并选择两列之间的重复值
    Sub Compare()
    'Update by Extendoffice
    Dim Range1 As Range, Range2 As Range, Rng1 As Range, Rng2 As Range, outRng As Range
    xTitleId = "KutoolsforExcel"
    On Error Resume Next
    Set Range1 = Application.Selection
    Set Range1 = Application.InputBox("Range1 :", xTitleId, Range1.Address, Type:=8)
    Set Range2 = Application.InputBox("Range2:", xTitleId, Type:=8)
    Application.ScreenUpdating = False
    For Each Rng1 In Range1
        xValue = Rng1.Value
        For Each Rng2 In Range2
            If xValue = Rng2.Value Then
                If outRng Is Nothing Then
                    Set outRng = Rng1
                Else
                    Set outRng = Application.Union(outRng, Rng1)
                End If
            End If
        Next
    Next
    outRng.Select
    Application.ScreenUpdating = True
    End Sub
    

步骤2:执行此VBA代码

  1. 粘贴此代码后,请按“F5”键运行此代码。在第一个提示框中,选择您要从中选择重复项的数据列表。然后,点击“确定”。
    A screenshot showing the first prompt to select a data list when running the VBA code to find duplicates in Excel
  2. 在第二个提示框中,选择您要对比的数据列表,然后点击“确定”,见截图:
    A screenshot showing the second prompt to select the comparison data list when running the VBA code in Excel

结果:

现在,A列和B列中的重复值已在A列中选择,您可以根据需要填充单元格颜色或将它们复制并粘贴。
A screenshot showing duplicate values selected in Column A after running the VBA code in Excel

提示:
  • 此VBA代码是“区分大小写”的;
  • 如果您想从B列中选择重复项,只需在选择数据范围时交换两个选定列即可。

逐行比较两列是否匹配

在Excel中,逐行比较两列通常是必要的,以检查匹配项,这有助于检查记录或分析数据趋势等任务。Excel有不同的方法可以做到这一点,从简单的公式到特殊功能,因此您可以根据数据的需求选择最佳方法。让我们来看看一些简单有效的方法来完成这项工作。

使用公式比较同一行的两列

Excel的公式提供了一种直接但功能强大的跨列数据比较方法。以下是您可以使用它们的方式。假设您在A列和B列中有数据,要检查这两列中的数据是否匹配,以下公式可能会帮助您:

提示:这些公式用途广泛,不仅适用于文本,还适用于数字、日期和时间。
使用等于运算符(=):

请输入或复制以下公式,按“Enter”键,然后向下拖动填充柄以获取所有结果。如果A列和B列中同一行的值相同,它将返回TRUE;如果不相同,则返回FALSE。见截图:

=A2=B2

A screenshot showing results of comparing two columns in Excel using the Equal To operator (=)

IF函数:

如果您希望比较更具信息性,可以使用IF函数显示自定义消息。

请输入或复制以下公式,按“Enter”键,然后向下拖动填充柄以获取所有结果。当值相同时,它将返回“匹配”;当值不同时,它将返回“未匹配”。见截图:

=IF(A2=B2, "Match", "No Match")
提示:您可以根据需要将“匹配”、“未匹配”更改为其他表达方式。

A screenshot showing results of comparing two columns in Excel with the IF function to display 'Match' or 'No Match'

EXACT函数:

如果您需要区分大小写的比较,“EXACT函数”是您的选择。

请输入或复制以下公式,按“Enter”键,然后向下拖动填充柄以获取所有结果。当值完全匹配时,它将返回“匹配”;当值不同时,它将返回“未匹配”。见截图:

=IF(EXACT(A2,B2), "Match", "No match")   
提示:您可以根据需要将“匹配”、“未匹配”更改为其他表达方式。

A screenshot showing results of comparing two columns in Excel using the case-sensitive EXACT function


使用实用工具——Kutools选择并突出显示同一行中的匹配项

如果您需要逐行选择并着色两列之间的匹配项,而不是在单独的列中获取结果,那么Kutools for Excel的“比较单元格”功能将是一个极好的选择。它使您能够快速选择并对每行中匹配或不同的单元格应用填充颜色。

Kutools for Excel 提供了超过 300 种高级功能,简化复杂任务,提升创造力与效率。 通过集成 AI 能力,Kutools 能够精准自动执行任务,让数据管理变得轻松简单。Kutools for Excel 的详细信息...         免费试用...

点击“Kutools” > “比较单元格”,在“比较单元格”对话框中,请执行以下操作:

  1. 分别在“查找值在”和“根据”框中选择两列的数据;
  2. 在“查找”部分下选择“相同单元格”;
  3. 在“对选中结果的处理”部分下指定一个背景色以突出显示匹配项;
  4. 最后,点击“确定”按钮。
    A screenshot of Kutools for Excel's Compare Cells dialog box for highlighting matches in the same row

结果:

现在,同一行中的匹配项已在A列中突出显示并选择,您可以随时将其复制并粘贴到任何所需的单元格中。见截图:
A screenshot showing matches highlighted in the same row using Kutools for Excel's Compare Cells feature

提示:
  • 如果在“比较单元格”对话框中勾选“区分大小写”选项,此功能“支持区分大小写”的比较;
  • 如果您想从B列中选择匹配项,只需在“比较单元格”对话框的“查找值在”和“根据”框中交换两个选定列即可;
  • 要应用此功能,请下载并安装Kutools for Excel

比较两列并突出显示同一行中的匹配项

比较两列并突出显示同一行中的匹配项可以使用Excel中的条件格式高效完成。以下是识别并突出显示行匹配项的指南:

步骤1:选择数据范围

选择您要突出显示行匹配项的数据范围。

步骤2:应用条件格式功能

  1. 点击“开始” > “条件格式” > “新建规则”。在“新建格式规则”对话框中,请执行以下操作:
    • 2.1 从“选择规则类型”列表框中选择“使用公式确定要设置格式的单元格”;
    • 2.2 在“为此公式为真时设置格式值”文本框中输入以下公式;
      =$B2=$A2
    • 2.3 然后,点击“格式”按钮。
    • A screenshot showing the New Formatting Rule dialog box for highlighting matches in Excel rows using Conditional Formatting
  2. 在弹出的“设置单元格格式”对话框中,指定一种颜色以突出显示匹配项。然后点击“确定”。
    A screenshot of the Format Cells dialog box for selecting a highlight color in Excel
  3. 当返回到“新建格式规则”对话框时,点击“确定”按钮。

结果:

现在,同一行中的匹配值已立即突出显示,见截图:
A screenshot showing row matches highlighted using Conditional Formatting in Excel

提示:
  • 条件格式中的公式是“不区分大小写”的。
  • 如果您希望突出显示具有不同值的单元格,请应用以下公式:
    =$B2<>$A2

比较两列并提取匹配数据

当您在Excel中处理两组数据并需要在一个列表中查找另一个列表中的共同项目时,查找公式是检索这些匹配项的首选解决方案。

在Excel中,如果您在A列中有一个水果列表,在B列中有其销售数据,现在您希望将这些与D列中的水果选择进行匹配以找到其相应的销售数据。如何在Excel中返回B列中的相对值呢?
A screenshot showing two lists of data in Excel, used for comparing and retrieving matching data

请根据需要应用以下任一公式,然后向下拖动填充柄以将此公式应用于其余单元格。

  • 所有Excel版本:
    =VLOOKUP(D2, $A$2:$B$6, 2, FALSE)
  • Excel 365和Excel 2021:
    =XLOOKUP(D2, $A$2:$A$6, $B$2:$B$6)

结果:

如果找到匹配项,所有对应的值都将显示;否则将返回#N/A错误,见截图:
A screenshot showing results of using VLOOKUP to pull matching data in Excel

提示:
  • 使用上述公式,如果D列中的某些水果在A列中没有匹配项,它们将返回错误。为了让这些错误更容易理解,您可以使用IFERROR函数包装您的公式:
    • 所有Excel版本:
      =IFERROR(VLOOKUP(D2,$A$2:$B$10,2,FALSE), "No match found")
    • Excel 365和Excel 2021:
      =IFERROR(XLOOKUP(D2, $A$2:$A$10, $B$2:$B$10),"No match found")
  • 对于那些热衷于高级查找公式的用户,“Kutools for Excel”提供了一套令人印象深刻的高级查找公式,将传统的VLOOKUP函数提升到新的高度,为您提供无与伦比的精确性和效率来管理您的数据任务。
    A screenshot showing Kutools for Excel's advanced lookup tools for pulling matching data
    Kutools for Excel拥有超过300种便捷工具的集合,旨在提高您的生产力。体验全部功能并提升您的电子表格! 立即获取!

相关文章:

  • 在范围内查找并突出显示重复行
  • 有时,工作表的数据范围内可能存在一些重复记录,现在您希望在范围内查找或突出显示重复行,如下图所示。当然,您可以逐一检查行来找到它们。但如果存在数百行,这不是一个好的选择。在这里,我将为您介绍一些有用的方法来处理此任务。
  • 用不同颜色突出显示重复值
  • 在Excel中,我们可以轻松地使用条件格式以一种颜色突出显示列中的重复值,但有时我们需要以不同颜色突出显示重复值,以便快速轻松地识别重复项,如下图所示。如何在Excel中解决此任务?
  • 在Excel中查找、突出显示、筛选、计数、删除重复项
  • 在Excel中,当我们手动记录数据、从其他来源复制数据或由于其他原因时,重复数据会一次又一次地出现。有时,重复项是必要且有用的。然而,有时重复值会导致错误或误解。在这里,本文将介绍通过公式、条件格式规则、第三方插件等方法快速识别、突出显示、筛选、计数、删除重复项的方法。
  • 删除重复项并用空白单元格替换
  • 通常,当您在Excel中应用“删除重复项”命令时,它会删除整个重复行。但有时,您希望用空白单元格替换重复值,在这种情况下,“删除重复项”命令将不起作用。本文将指导您在Excel中删除重复项并用空白单元格替换它们。