统计Excel单元格区域中不重复值的数量
统计单元格区域中有多少个不重复的值。如下图所示的工作表:
  
将单元格区域A1:A6命名为Data,要使用公式求出区域Data中有多少个不重复的值。
因为数据很少,我们数一数,是3个,就是数字1、2、3,但是如何用公式得出3呢?
先不要看下面的答案,自已试一试。
公式思路
先计算出每个值在单元格区域中出现的次数,然后统计其出现频率,最后将频率值相加,即为不重复值的个数。
公式解析
在单元格中输入下面的数组公式:
=SUM(1/COUNTIF(Data,Data))
输入完后,记得按Ctrl+Shift+Enter组合键。结果如下图所示:
  
公式中,COUNTIF(Data,Data)统计单元格区域Data中每个值在区域中出现的次数。等价于COUNTIF({1;2;3;3;2;2},{1;2;3;3;2;2}),首先使用COUNTIF({1;2;3;3;2;2},1)计算1在区域Data中出现的次数,得到结果1;接着使用用COUNTIF({1;2;3;3;2;2},2)计算2在区域Data中出现的次数,得到结果3,……,依此类推,最后得到的结果为{1;3;2;2;3;3},即由区域中各个值在区域中出现的次数组成的数组。
1/COUNTIF(Data,Data)计算所得数组{1;3;2;2;3;3}中每个值出现的频率,例如数组中第2个值3在出现的3次中占1/3,即0.333,因此,1/COUNTIF(Data,Data)计算所得的结果为数组{1;0.333;0.5;0.5;0.333;0.333}。该数组作为SUM函数的参数,相加后的结果即为不重复值的数量(因为每个值在一组数中出现的频率之和为1)。
下面,我们将求解过程分解,来进一步理解这个公式的原理。
在单元格C1中输入公式:
=COUNTIF(Data,A1)
并下拉至单元格C6,统计区域Data中每个值出现的次数,结果如下图所示。
  
在单元格区域D1:D6中输入数组公式:
=1/C1:C6
得到每个值在区域Data中出现的频率。
  
对单元格区域D1:D6求和,即得到区域Data中不重复值的个数:
  
注意,如果所求不重复值的区域中存在空单元格,会导致上述公式错误。
可以使用下面的公式解决:
=SUM(IF(COUNTIF(Data,Data)=0,””,1/COUNTIF(Data,Data)))
该公式巧妙地使用空格代替错误值#DIV/0!作为SUM函数的参数,将忽略掉空格而只求数值之和,最后得到所需结果。
小结
又一次惊叹公式的强大!其背后的原理,总是离不开基本的数学,好好体味这美妙的公式吧!
最新推荐
- 
                                
                                    excel怎么把一列数据拆分成几列 excel一列内容拆分成很多列  excel怎么把一列数据拆分成几列?在使用excel表格软件的过程中,用户可以通过使用excel强大的功能 […] 
- 
                                
                                    win7已达到计算机的连接数最大值怎么办 win7连接数达到最大值  win7已达到计算机的连接数最大值怎么办?很多还在使用win7系统的用户都遇到过在打开计算机进行连接的时候 […] 
- 
                                
                                    window10插网线为什么识别不了 win10网线插着却显示无法识别网络  window10插网线为什么识别不了?很多用户在使用win10的过程中,都遇到过明明自己网线插着,但是网络 […] 
- 
                                
                                    win11每次打开软件都弹出是否允许怎么办 win11每次打开软件都要确认  win11每次打开软件都弹出是否允许怎么办?在win11系统中,微软提高了安全性,在默认的功能中,每次用户 […] 
- 
                                
                                    win11打开文件安全警告怎么去掉 下载文件跳出文件安全警告  win11打开文件安全警告怎么去掉?很多刚开始使用win11系统的用户发现,在安装后下载文件,都会弹出警告 […] 
- 
                                
                                    nvidia控制面板拒绝访问怎么办 nvidia控制面板拒绝访问无法应用选定的设置win10  nvidia控制面板拒绝访问怎么办?在使用独显的过程中,用户可以通过显卡的的程序来进行图形的调整,比如英伟 […] 
热门文章
excel怎么把一列数据拆分成几列 excel一列内容拆分成很多列
2win7已达到计算机的连接数最大值怎么办 win7连接数达到最大值
3window10插网线为什么识别不了 win10网线插着却显示无法识别网络
4win11每次打开软件都弹出是否允许怎么办 win11每次打开软件都要确认
5win11打开文件安全警告怎么去掉 下载文件跳出文件安全警告
6nvidia控制面板拒绝访问怎么办 nvidia控制面板拒绝访问无法应用选定的设置win10
7win11c盘拒绝访问怎么恢复权限 win11双击C盘提示拒绝访问
8罗技驱动设置开机启动教程分享
9win7设置电脑还原点怎么设置 win7设置系统还原点
10win10硬盘拒绝访问怎么解决 win10磁盘拒绝访问
随机推荐
专题工具排名 更多+

 
  
									
                                 
  
									
                                 
  
									
                                 
  
									
                                 闽公网安备 35052402000376号
闽公网安备 35052402000376号