如何识别Excel中的重复数据:查找、高亮、计数、过滤

  • Share This
Michael Brown

本教程解释了如何在Excel中搜索重复的内容。 你将学习一些公式来识别重复的值,或找到有或没有首次出现的重复行。 你还将学习如何单独计算每个重复记录的实例,并找到一列中重复的总数,如何过滤掉重复的内容,等等。

在处理一个大的Excel工作表或将几个小的电子表合并成一个大的电子表时,你可能会发现其中有很多重复的行。 在我们以前的一个教程中,我们讨论了比较两个表或列是否重复的各种方法。

而今天,我想分享几个快速有效的方法来识别单个列表中的重复内容。 这些解决方案适用于所有版本的Excel 365、Excel 2021、Excel 2019、Excel 2016、Excel 2013及以下版本。

    如何识别Excel中的重复内容

    在Excel中检测重复值的最简单方法是使用COUNTIF函数。 根据你想找到有或没有首次出现的重复值,公式中会有轻微的变化,如以下例子所示。

    如何找到重复的记录,包括第一次出现的记录

    假设你在A列有一个项目列表,你想检查是否有重复的项目。 这些可以是发票、产品ID、名称或任何其他数据。

    下面是一个在Excel中查找重复的公式,包括第一次出现的情况(其中A2是最上面的单元格)。

    =COUNTIF(A:A, A2)>1

    在B2中输入上述公式,然后选择B2,拖动填充柄,将公式向下复制到其他单元格。

    正如你在上面的截图中所看到的,该公式对重复的值返回TRUE,对唯一的值返回FALSE。

    注意:如果你需要在一个文件中找到重复的内容 细胞的范围 例如,要搜索A2:A8单元格中的重复内容,使用这个公式。

    =COUNTIF( A$2:A$8 , A2)>1

    对于一个重复公式来说,要想返回比TRUE和FALSE的布尔值更有意义的东西,请将其包含在IF函数中,并为重复值和唯一值输入任何你想要的标签。

    =IF(COUNTIF($A$2:$A$8, $A2)>1, "重复", "唯一")

    如果你想让Excel公式只查找重复的内容,可以用一个空字符串("")替换 "Unique",像这样。

    =IF(COUNTIF($A$2:$A$8, $A2)>1, "重复的", "")

    对于重复的记录,该公式将返回 "Duplicates",而对于唯一的记录,则返回一个空白单元格。

    如何在Excel中搜索没有第1次出现的重复内容

    如果你打算在找到重复的记录后进行过滤或删除,使用上述公式是不安全的,因为它把所有相同的记录都标记为重复的。 如果你想在列表中保留唯一的值,那么你不能删除所有重复的记录,你只需要删除第二条和所有后续的实例。

    因此,让我们通过在适当的地方使用绝对和相对单元格引用来修改我们的Excel重复公式。

    =IF(COUNTIF($A$2:$A2, $A2)>1, "重复的", "")

    正如你在下面的截图中所看到的,这个公式并没有识别第一次出现的" 苹果 "为重复的。

    如何在Excel中查找大小写重复的内容

    当你需要识别包括文本大小写在内的精确重复时,可以使用这个通用数组公式(按Ctrl + Shift + Enter键输入)。

    if( sum( --exact( 范围 , 最上层的_单元格 )))<=1, "", "重复")

    在公式的核心部分,你使用EXACT函数将目标单元格与指定范围内的每个单元格进行精确比较。 这个操作的结果是一个TRUE(匹配)和FALSE(不匹配)的数组,它被单数运算符(--)强制为1和0的数组。 之后,SUM函数将这些数字相加,如果和大于1,IF函数报告一个"重复"。

    对于我们的样本数据集,公式如下。

    =IF(SUM((--EXACT($A$2:$A$8,A2)))<=1," ", "重复")

    如下面的截图所示,它将小写和大写作为不同的字符处理(APPLES没有被识别为重复的字符)。

    提示:如果你使用谷歌电子表格,以下文章可能对你有帮助:如何在谷歌电子表格中找到并删除重复的内容。

    如何查找Excel中的重复行

    如果你的目的是对一个由几列组成的表进行剔除,那么你需要一个公式,可以检查每一列并只识别出 绝对重复的行 即所有列中的数值完全相等的行。

    让我们考虑下面的例子。 假设,你在A列有订单号,B列有日期,C列有订购的项目,你想找到具有相同订单号、日期和项目的重复行。 为此,我们将在COUNTIFS函数的基础上创建一个重复公式,允许一次检查多个条件。

    搜索有第1次出现的重复行 ,使用这个公式。

    =IF(COUNTIFS($A$2:$A$8,$A2,$B$2:$B$8,$B2,$C$2:$C$8,$C2)>1, "重复行", "")

    下面的截图表明,公式真正定位的只是在所有3列中有相同数值的行。 例如,第8行与第2行和第5行有相同的订单号和日期,但在C列有不同的项目,因此它没有被标记为重复行。

    为了显示 没有第1次出现的重复行 ,对上述公式做一点调整。

    =IF(COUNTIFS($A$2:$A2,$A2,$B$2:$B2,$B2,$B$2:$B2,$B2,$C$2:$C2,$C2,)>1, "重复行", "")

    如何计算Excel中的重复数据

    如果你想知道你的Excel表格中相同记录的确切数量,请使用以下公式来计算重复的记录。

    单独计算每个重复记录的实例

    当你有一个有重复值的列时,你可能经常需要知道每个值有多少个重复值。

    要想知道这个或那个条目在你的Excel工作表中出现了多少次,可以使用一个简单的COUNTIF公式,其中A2是第一个,A8是列表中的最后一个项目。

    =countif($a$2:$a$8, $a2)

    如下面的截图所示,该公式计算了每个项目的出现次数:" 苹果 "出现3次," 绿香蕉 " - 2次," 香蕉 "和" 橙子 "只有一次。

    如果你想确定每个项目的第1次、第2次、第3次等出现的情况,请使用以下公式。

    =countif($a$2:$a2, $a2)

    以类似的方式,你可以计算 发生的 重复的行 唯一的区别是,你需要使用COUNTIFS函数而不是COUNTIF。 例如。

    =countifs($a$2:$a$8, $a2, $b$2:$b$8, $b2)

    一旦计算出重复的值,你可以隐藏唯一的值,只查看重复的值,反之亦然。 要做到这一点,应用Excel的自动过滤功能,如下例所示:如何在Excel中过滤掉重复的值。

    计算某一列中重复的总数

    计算一列中的重复值的最简单方法是采用我们在Excel中用来识别重复值的任何公式(无论有无首次出现)。 然后你可以通过使用以下COUNTIF公式来计算重复值。

    =COUNTIF(range, "diplicate")

    哪里" 重复 "是你在定位重复的公式中使用的标签。

    在这个例子中,我们的重复公式有如下形式。

    =COUNTIF(B2:B8, "重复")

    另一种方法是通过使用更复杂的数组公式来计算Excel中的重复值。 这种方法的优点是它不需要帮助列。

    =rows($a$2:$a$8)-sum(if( countif($a$2:$a$8,$a$2:$a$8)=1,1,0) )

    因为这是一个数组公式,记得按Ctrl + Shift + Enter来完成它。 另外,请记住,这个公式计算所有重复的记录。 包括首次出现的情况 :

    为了找到 重复行总数 在上述公式中嵌入COUNTIFS函数而不是COUNTIF,并指定所有你想检查的重复列。 例如,要根据A和B列计算重复的行,在Excel工作表中输入以下公式。

    =rows($a$2:$a$8)-sum(if( countifs($a$2:$a$8,$a$2:$a$8,$b$2:$b$8)=1,1,0)

    如何过滤Excel中的重复数据

    为了便于数据分析,你可能想过滤你的数据,只显示重复的数据。 在其他情况下,你可能需要相反的情况--隐藏重复的数据,查看唯一的记录。 下面你会找到两种情况的解决方案。

    如何在Excel中显示和隐藏重复的内容

    如果你想一目了然地看到所有的重复,使用Excel中的一个公式来寻找重复,这样更适合你的需要。 然后选择你的表格,切换到 数据 标签,并点击 过滤器 或者,你也可以点击 排序 & 筛选 > 过滤器 关于 首页 中的选项卡。 编辑工作 组。

    提示:要想自动启用过滤功能,请将您的数据转换为功能齐全的Excel表格。 只需选择所有数据并按Ctrl + T快捷键。

    之后,点击箭头 的标题中的 重复的 栏,并检查" 重复的行 "框中,以 显示重复的内容 如果你想过滤掉,即 隐藏重复的内容 ,选择" 独特的 ",只查看唯一的记录。

    而现在,你可以通过关键列对重复的数据进行排序,以便于分析。 在这个例子中,我们可以通过以下方式对重复的行进行排序 订单号 列。

    如何按出现次数过滤重复的内容

    如果你想显示重复值的第2次、第3次或第N次出现,请使用我们前面讨论的计算重复实例的公式。

    =countif($a$2:$a2, $a2)

    然后对你的表格进行过滤,只选择你想查看的事件。 例如,你可以像下面的截图那样,过滤第二种事件。

    要显示所有重复的记录,即 大于1的发生率 ,点击标题中的过滤箭头。 出现的情况 列(有公式的那一列),然后点击 数字过滤器 > 大于 .

    选择" 大于 在第一个框中输入"",在旁边的框中输入1,然后点击 认可 按钮。

    以类似的方式,你可以显示第二、第三和所有后续的重复出现。 只要在""旁边的方框中输入所需的数字即可。 大于 ".

    突出显示、选择、清除、删除、复制或移动重复的内容

    在你像上面展示的那样过滤了重复的东西之后,你有多种选择来处理它们。

    如何在Excel中选择重复的内容

    要选择重复的内容。 包括列标题 ,过滤它们,点击任何一个被过滤的单元格来选择它,然后按Ctrl + A。

    要选择重复的记录 不含列标题 ,选择第一个(左上角)单元格,然后按Ctrl + Shift + End将选择范围扩大到最后一个单元格。

    提示:在大多数情况下,上述快捷键工作良好,只选择过滤的(可见)行。 在一些罕见的情况下,主要是在非常大的工作簿上,可见和不可见的单元格都可能被选中。 要解决这个问题,首先使用上述快捷键之一,然后按Alt + ;来 只选择可见的单元格 ,忽略了隐藏的行。

    如何清除或删除Excel中的重复内容

    清除Excel中的重复数据 ,选择它们,点击右键,然后点击 清除内容 (或点击 清楚 按钮>。 清除内容 关于 首页 选项卡,在 编辑工作 这将只删除单元格内容,结果将是空单元格。 选择被过滤的重复单元格并按下 删除 键会有同样的效果。

    删除整个重复的行 筛选重复的内容,通过在行标题上拖动鼠标来选择行,右击选择的内容,然后选择 删除行 从上下文菜单中选择。

    如何在Excel中突出显示重复的内容

    要突出显示重复的值,选择被过滤的重复值,点击 填充颜色 按钮 关于 首页 选项卡,在 字体 组,然后选择你选择的颜色。

    在Excel中突出显示重复的另一种方法是使用内置的重复条件格式化规则,或者为你的工作表专门创建一个自定义规则。 有经验的Excel用户根据我们用来检查Excel中重复的公式创建这样的规则不会有任何问题。 如果你对Excel公式或规则还不是很熟悉,你会发现详细的本教程中的步骤:如何在Excel中突出显示重复的内容。

    如何复制或移动重复的内容到另一个工作表中

    拷贝 如果要复制,选择它们,按Ctrl + C ,然后打开另一个工作表(新的或现有的),选择你想复制的单元格区域的左上方,按Ctrl + V粘贴它们。

    行动 复制到另一个工作表,执行同样的步骤,唯一不同的是你按Ctrl + X(剪切)而不是Ctrl + C(复制)。

    重复删除器--快速有效地定位Excel中的重复内容

    现在你知道了如何在Excel中使用重复的公式,让我给你演示另一种快速、高效和无公式的方法--Excel的重复删除器。

    这个多合一工具可以搜索单列中的重复值或唯一值,也可以比较两列。 它可以找到、选择和突出显示重复的记录或整个重复的行,删除发现的重复记录,复制或移动到另一个工作表。 我认为一个实际使用的例子胜过许多文字,所以我们开始吧。

    如何用2个快速步骤找到Excel中的重复行

    为了测试我们的Duplicate Remover插件的能力,我创建了一个有几百条记录的表格,看起来如下。

    正如你所看到的,该表有几列。 前3列包含最相关的信息,所以我们将只根据A-C列中的数据来搜索重复的行。要找到这些列中的重复记录,只需做以下工作。

    1. 选择表格中的任何单元格并点击 重复计算表 在安装了我们的Ultimate Suite for Excel之后,你会发现它位于 阿博比特数据 选项卡,在 Dedupe 组。

    2. 智能插件将拾取整个表格并要求你指定以下两件事。
      • 选择 列,以检查是否有重复的内容 (在这个例子中,这些是 订单号, 订购日期 项目 列)。
      • 选择一个 对复制件执行的操作 因为我们的目的是为了识别重复的行,所以我选择了 增加一个状态栏

      除了添加状态栏外,还有一系列其他选项供你使用。

      • 删除重复的内容
      • 着色(高亮)重复的内容
      • 选择重复的内容
      • 将重复的内容复制到一个新的工作表中
      • 将重复的内容移到新的工作表中

      点击 认可 按钮,并等待几秒钟。 完成!

    正如你在下面的截图中所看到的,所有在前3列中有相同值的行都被定位了(第一次出现的行没有被识别为重复)。

    如果你想有更多的选项来剔除你的工作表,可以使用 复制删除向导 下面是详细的步骤。

    重复删除向导--在Excel中搜索重复内容的更多选项

    根据你所处理的特定工作表,你可能希望也可能不希望将相同记录的第一个实例视为重复。 一个可能的解决方案是为每种情况使用不同的公式,正如我们在《如何识别Excel中的重复》中讨论的那样。 如果你正在寻找一种快速、准确和无公式的方法,请尝试 复制删除向导 :

    1. 选择表格中的任何单元格并点击 复制的清除器 上的按钮。 阿博比特数据 向导将运行,整个表将被选中。

    2. 在下一步,你将看到4个选项来检查你的Excel表格中的重复内容。
      • 没有第1次出现的重复件
      • 有第1次出现的重复情况
      • 独特的价值
      • 唯一值和第1次重复出现的值

      对于这个例子,让我们选择第二个选项,即 重复的+第一次出现的 :

    3. 现在,选择你想检查重复的列。 像前面的例子,我们选择前3列。

    4. 最后,选择一个你想对复制件执行的操作。 与重复表工具的情况一样,"复制清除 "向导可以 确定 , 选择 , 亮点 , 删除 , 拷贝 行动 重复的。

      因为本教程的目的是演示在Excel中识别重复的不同方法,让我们勾选相应的选项并点击 完成 :

    只需要几秒钟,重复删除向导就能检查数百行,并提供以下结果。

    没有公式,没有压力,没有错误--总是迅速和无可挑剔的结果 :)

    如果你有兴趣尝试这些工具来寻找你的Excel工作表中的重复内容,我们非常欢迎你下载下面的评估版本。 我们将非常感谢你在评论中的反馈!

    可用的下载

    识别重复 - 公式示例 (.xlsx 文件)

    终极套房 - 试用版 (.exe文件)

    Michael Brown is a dedicated technology enthusiast with a passion for simplifying complex processes using software tools. With more than a decade of experience in the tech industry, he has honed his skills in Microsoft Excel and Outlook, as well as Google Sheets and Docs. Michael's blog is dedicated to sharing his knowledge and expertise with others, providing easy-to-follow tips and tutorials for improving productivity and efficiency. Whether you're a seasoned professional or a beginner, Michael's blog offers valuable insights and practical advice for getting the most out of these essential software tools.