【Excel】未来5年你必须要掌握的函数之9:UNIQUE函数
当前位置:点晴教程→知识管理交流
→『 技术文档交流 』
今天我们来谈谈在EXCEL中新增的去重函数,即UNIQUE函数。UNIQUE一词有“唯一的;独一无二的”等含义,因此这个函数的使用相对容易理解。 UNIQUE函数用于返回列表或区域中的唯一值。它可以帮助用户快速筛选出数据集中不重复的元素,并且能够按照用户指定的方式返回结果,比如返回唯一值的数组或者返回唯一值及其对应的出现次数。 1、基本语法 =UNIQUE(array,[by_col],[exactly_once]) array:必需参数,表示要从中提取唯一值的区域或数组。它可以是一个单元格区域,也可以是一个已经定义好的数组。 by_col:可选参数,用于指定是按列(TRUE)还是按行(FALSE)来比较和提取唯一值,默认按行比较。 exactly_once:可选参数,用于指定是否只返回出现一次的唯一值。如果此参数设置为TRUE,则函数只返回在array中出现一次的唯一值;如果设置为FALSE则返回所有的唯一值,默认返回所有的唯一值。 2、基本用法 1)对部门进行去重 =UNIQUE(B2:B10) 2)对姓名和部门进行去重 =UNIQUE(A2:B10) 2)对姓名进行计数 =COUNTA(UNIQUE(A2:A10)) 利用COUNTA和UNIQUE函数的简单嵌套,只有“王朝”和“马汉”这两个人,结果自然为2。 3)判断姓名是否有重复 使用COUNTA函数分别对去重之前和去重之后的姓名进行计数,通过比较两者之差是否等于0来判断是否存在重复姓名。如果两者之差为0,则表示姓名没有重复;反之,则表示存在重复姓名。 =IF(COUNTA(A2:A10)-COUNTA(UNIQUE(A2:A10))=0,"不重复","重复") 4)只保留出现一次的姓名 这个时候要用到后面的参数,很显然,姓名“王朝”出现过两次,需要剔除掉。 =UNIQUE(A2:A10,0,1) 5)条件去重 统计在指定起始日期和结束日期范围内究竟有哪些料号? =UNIQUE(FILTER(B2:B20,(A2:A20>=E2)*(A2:A20<=F2))) 6)中式排名 在EXCEL中提供了一个RANK排名函数,但是它采用的是美式排名方式,与我们中国人的习惯不太符合。由于李四和王五的销量都是500,因此他们应该并列第2名,但是在美式排名中,后面的赵六直接跳到了第4名。 =RANK(B2,$B$2:$B$6,0) 为了解决这个问题,我们可以结合UNIQUE函数写出符合我们中国人的排名方式。 =SUM((UNIQUE($B$2:$B$6)>B2)*1)+1 重点理解: UNIQUE($B$2:$B$6): 将B2到B6范围内的数值进行去重操作,返回一个包含唯一值的数组。 (UNIQUE($B$2:$B$6)>B2): 将唯一值数组中的每个值与单元格B2中的值进行比较,返回一个包含TRUE或FALSE的数组,表示唯一值是否大于B2。 ((UNIQUE($B$2:$B$6)>B2)*1): 将上一步得到的TRUE或FALSE的数组转换为1或0的数组,即将TRUE转换为1,FALSE转换为0。 SUM((UNIQUE($B$2:$B$6)>B2)*1): 对上一步得到的1或0的数组进行求和,即统计唯一值中大于B2的值的个数。 SUM((UNIQUE($B$2:$B$6)>B2)*1)+1: 在上一步的基础上再加1,从而最终获得排名。 7)核对未出勤人员 根据应到名单和签到名单,统计出未到人员名单。 =UNIQUE(VSTACK(B2:B9,D2:D7),0,1) 这里使用VSTACK函数先把应到名单和签到名单进行堆叠,然后利用UNIQUE函数进行去重,选择只出现过一次的人员即可。 该文章在 2024/11/26 16:50:21 编辑过 |
关键字查询
相关文章
正在查询... |