Excel按条件提取不重复数据怎么设置?操作要点整理

大强酱_8026

大强酱_8026

2026-07-13

244人浏览

原创

excel里要按条件提取不重复数据,最方便的写法是用 unique 嵌套 filter:先用 filter 按规则筛出符合要求的所有记录,再交给 unique 自动去重。本次操作基于microsoft excel 365完成,如果你用的是wps或者老版本excel,得先确认软件支不支持这两个动态数组函数。

这个组合公式特别适合自动提取名单、商品、部门、城市这类字段,源数据新增行之后,只要你写的引用范围覆盖到了新行,结果会自动同步刷新,比手动筛选复制靠谱多了,后续维护也省事儿。

第一步:整理源数据和条件单元格

先把源数据整理成连续的区块,条件列中间不要留空列。示例里左边放的是人员和项目数据,右边单独留一个单元格填筛选条件,旁边空出位置放结果。对应公式里的 A2:B10 就是你要返回的姓名等数据的区域,C2:C10=F1 就是“项目列内容等于条件单元格值”的筛选规则。

Excel 中源数据、条件单元格和 UNIQUE FILTER 公式位置

要是只需要提取单列不重复名单,返回区域选单列就行;要同时返回姓名、部门这类多列内容,就把返回范围扩到对应列数。条件单元格最好单独放在结果区上方,之后改筛选条件的时候不用动公式。

第二步:输入 UNIQUE 和 FILTER 组合公式

点结果区域的第一个单元格直接输公式,通用结构是 =UNIQUE(FILTER(返回区域,条件区域=条件值))。比如要提取A组对应的所有不重复颜色,就写 =UNIQUE(FILTER(B5:B16,C5:C16=E4));要按指定项目提取对应姓名,就写 =UNIQUE(FILTER(A2:B10,C2:C10=F1))。

Excel 使用 UNIQUE FILTER 按条件返回不重复结果

输完公式别往下拖,动态数组函数会自动把所有结果“溢出”填充到下方空白单元格,要是手动把公式复制到每一行,反而容易出重复结果,还可能把溢出区域挡住。

函数 语法 关键参数 在本题里的作用
FILTER FILTER(array, include, [if_empty]) array 是返回区域;include 是筛选条件;[if_empty] 是无结果时显示的内容。 先筛出符合条件的行。
UNIQUE UNIQUE(array, [by_col], [exactly_once]) array 是要去重的数组;[by_col] 为 TRUE 时按列比较;[exactly_once] 为 TRUE 时只保留只出现一次的值。 把 FILTER 返回的结果去重。

大部分按行提取的场景,by_col和exactly_once这两个参数都不用填。要是你的需求是“只保留整个数据里仅出现过1次的值”,再把 exactly_once 设为 TRUE;普通的去重需求保持默认就好。

excel-clean
excel-clean

Excel 数据清洗——去重、填补缺失值、格式转换。

下载

第三步:给无结果情况加 IFERROR

如果条件没有匹配到任何记录,直接用FILTER会返回错误值。稳妥点的写法是在最外层套个 IFERROR,比如 =IFERROR(UNIQUE(FILTER(A2:B10,(C2:C10=G1)*(D2:D10<g2>。要多个条件同时满足的话,直接用乘号把不同的判断条件连起来就行。</g2>

Excel 在 UNIQUE FILTER 外层加入 IFERROR 处理无结果情况

上面公式里的 (C2:C10=G1)*(D2:D10<g2>,代表“项目等于指定值,同时年龄小于指定数”。每个小条件都会返回TRUE或者FALSE,相乘之后只有所有条件都满足的行,才会被FILTER保留下来。</g2>

第四步:清空溢出区域再检查公式

要是结果区域下方已经有内容,公式会直接报 #SPILL! 错误。解决方法很简单:把结果区下方被占的单元格清空,或者把整个公式挪到更空的位置就行。动态数组的溢出结果需要一整块连续的空白区域,不能被手动输入的内容、合并单元格或者其他公式挡住。

Excel UNIQUE 公式返回 #SPILL 时检查结果区域是否被占用

另一个高频错误是不同引用区域的行数对不上,比如返回区域写的是 A2:A100,条件区域却只写到 C2:C80,FILTER会因为两个数组尺寸不一样报错。返回区域和所有条件区域必须起始行相同、结束行也相同。

需要给结果排序的话,最外层再套个 SORT 就行:=SORT(UNIQUE(FILTER(A2:A100,B2:B100=E1)))。要实现多个条件满足任意一个就返回的效果,直接把条件用加号连起来:=UNIQUE(FILTER(A2:A100,(B2:B100=E1)+(C2:C100=F1)))。最后提交公式前记得查三件事:条件单元格里有没有多余的空格、所有引用区域的行数是不是一致、结果区有没有留够连续空白。

相关文章

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
excel对比两列数据异同
excel对比两列数据异同

Excel作为数据的小型载体,在日常工作中经常会遇到需要核对两列数据的情况,本专题为大家提供excel对比两列数据异同相关的文章,大家可以免费体验。

2023.07.25

4801

7

excel重复项筛选标色
excel重复项筛选标色

excel的重复项筛选标色功能使我们能够快速找到和处理数据中的重复值。本专题为大家提供excel重复项筛选标色的相关的文章、下载、课程内容,供大家免费下载体验。

2023.07.31

2936

5

excel复制表格怎么复制出来和原来一样大
excel复制表格怎么复制出来和原来一样大

本专题为大家带来excel复制表格怎么复制出来和原来一样大相关文章,帮助大家解决问题。

2023.08.02

2720

3

excel表格斜线一分为二
excel表格斜线一分为二

在Excel表格中,我们可以使用斜线将单元格一分为二。本专题为大家带来excel表格斜线一分为二怎么弄的相关文章,希望可以帮到大家。

2023.08.02

1444

3

excel斜线表头一分为二
excel斜线表头一分为二

excel斜线表头一分为二的方法有使用合并单元格功能方法、使用文本框功能方法、使用自定义格式方法。本专题为大家提供excel斜线表头一分为二相关的各种文章、以及下载和课程。

2023.08.02

697

5

绝对引用的输入方法
绝对引用的输入方法

绝对引用允许在公式中引用一个固定的单元格,而不会随着公式的复制和粘贴而改变引用的单元格。本专题为大家提供绝对引用相关内容的文章,大家可以免费体验。

2023.08.09

5128

7

java导出excel
java导出excel

在Java中,我们可以使用Apache POI库来导出Excel文件。本专题提供java导出excel的相关文章,大家可以免费体验。

2023.08.18

6243

6

excel输入值非法
excel输入值非法

在Excel中,当输入的数值非法时,有以下多种处理方法。本专题为大家提供excel输入值非法的相关文章,大家可以免费体验。

2023.08.18

1641

3

excel生成二维码
excel生成二维码

虽然Excel本身并不直接支持生成二维码,但我们可以借助一些插件或宏来实现在Excel中生成二维码的功能。本专题为大家提供excel生成二维码的相关文章。

2023.08.18

2598

4

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Excel 教程
Excel 教程

共162课时 | 43.8万人学习

成为PHP架构师-自制PHP框架
成为PHP架构师-自制PHP框架

共28课时 | 3.5万人学习