Excel情报局
职场联盟Excel
1
职场实例
2
解题思路
这个问题其实并不难,我们完全可以通过MATCH函数、ROW函数、N函数和SUM函数实现快速统计唯一值个数的问题。
=MATCH(搜索键值, 范围, [排列顺序])
参数释义:
搜索键值(必填):想要查找的值。
范围(必填):可能包含所要查找数值的连续的单元格区域,仅支持单行或单列,不支持多行/多列。
排列顺序(选填):1 为默认类型,此时假设范围已按升序排序,返回小于等于搜索值的最大值。0 表示完全匹配,在范围未排序的情况下需要使用此方式。-1 是指假设范围是按降序排序时,返回大于等于搜索值的最小值。
目的是利用MATCH函数精确匹配的查询方式,分别查找A2:A7单元格区域中的每个数据在该区域(A2:A7)中首次出现的位置,例如以“ASC123”为例,MATCH函数查找A2单元格和A4单元格在A2:A7单元格区域中的位置均为1,也就是“ASC123”在A2:A7单元格区域中首次出现的位置。具体返回结果原理如下图所示:
我们继续完善补充C2单元格中的函数公式:
=MATCH(A2:A7,A2:A7,0)=ROW(A1:A6)
ROW(A1:A6)函数部分用于得到1~6的连续的自然数序列,其结果以内存数组的形式存储{1;2;3;4;5;6},行数与A列的数据行数一致。用MATCH函数的结果等于ROW函数的结果,即两个结果数组中各个元素进行一一对比的逻辑判断。
我们可以观察到,只有数据第一次出现的时候,用MATCH函数得到数据出现的位置才与ROW函数生成的序列值对应相等。如果数据首次出现,则比较结果为TRUE,否则为FALSE。具体返回结果原理如下图所示:
我们继续完善补充C2单元格中的函数公式:
=N(MATCH(A2:A7,A2:A7,0)=ROW(A1:A6))
因为逻辑值TRUE的个数代表A2:A7单元格区域中不重复值的个数。所以我们利用N函数将数组中的元素逻辑值TRUE和FALSE分别转换为1和0。具体返回结果原理如下图所示:
我们继续完善补充C2单元格中的函数公式:
=SUM(N(MATCH(A2:A7,A2:A7,0)=ROW(A1:A6)))
因为内存数组中的元素1数字值的个数代表A2:A7单元格区域中不重复值的个数,所以我们使用SUM函数对数组中的各个元素进行相加求和即可得到唯一值的个数。具体返回结果原理如下图所示:
回顾关键内容,善用图片表达,学会建立联系,拓展深度广度,浓缩关键概念,应用到行动中,善于归纳总结,尝试进行分享。
联系客服