分享

总结篇--COUNTIF函数实用终极帖

 hercules028 2020-11-04

来源:Excel应用之家

COUNTIF函数主要用于统计满足某个条件的单元格的个数。其基本用法已经在帖子统计利器-countif函数有所介绍了。今天,我们就来一起回顾一下COUNTIF的一些经典用法。


01

统计等于某一条件的单元格

如此例,统计数据区域中有几个3。


在单元格C2中输入“=COUNTIF($A$2:$A$8,3)”即可。


02

统计大于或小于某一条件的单元格

同样上例,统计大于3的单元格个数。


在单元格C2中输入“=COUNTIF($A$2:$A$8,'>3')”即可。


03

统计大于或小于某一单元格值的单元格

统计大于B2单元格数值的单元格个数。


在单元格D2中输入“=COUNTIF($A$2:$A$8,'>'&B2)”即可。


04

统计不等于某一条件的单元格

统计不等于3的单元格个数。


在单元格D2中输入“=COUNTIF($A$2:$A$8,'<>3')”即可。


05

统计空白单元格个数


06

统计非空白单元格个数


07

统计以某一字符开头的单元格个数

在单元格C2中输入“=COUNTIF($A$2:$A$8,'E*')”即可。



08

统计身份证是否重复

对于身份证或者银行卡号等常长的文本型数字,使用COUNTIF还需要加上一点辅助信息。

在单元格C2中输入“=IF(COUNTIF($A$2:$A$6,A2&'*')>1,'重复','')”即可。

思路:
  • EXCEL中的数字精度只有15位,大于15位的都会默认为0。加上“*”就是告诉EXCEL要查找包含单元格A2在内的文本


09

查找首次出现

对于COUNTIF的第一个参数也有许多实际应用。


在单元格B2中输入“=IF(COUNTIF(A$2:A2,A2)=1,'是','否')”并向下拖曳即可。

思路:
  • 关键点是数据区域A$2:A2随着向下拖曳而不断变大


10

查找末次出现


在单元格B2中输入“=IF(COUNTIF(A2:$A$13,A2)=1,'是','否')”并向下拖曳即可。

思路同上例。



11

计算不重复个数


在单元格C2中输入“=SUM(1/COUNTIF($A$2:$A$13,$A$2:$A$13))”,CTRL+SHIFT+ENTER三键回车。

此例是COUNTIF函数的经典用法!


12

求不重复清单

求不重复清单我们可以使用经典的INDEX+SMALL+IF+MATCH组合。但是这个组合稍显复杂了一些。我们利用MATCH+COUNTIF函数的组合也可以求不重复的清单。

在单元格B2中输入“=IFERROR(INDEX($A$2:$A$13,MATCH(0,COUNTIF($B$1:B1,$A$2:$A$13),)),'')”,三键回车并向下拖曳即可。

思路:

  • 利用COUNTIF在动态区域$B$1:B1中查找单元格区域A2:A13中的数据,若查不到则返回0

  • 利用MATCH函数来查找第一个0出现的位置,并将结果返回给INDEX函数

  • INDEX函数返回具体清单

  • IFERROR函数屏蔽错误值


13

求某条件下不重复清单

有时候我们需要求在给定某一条件下的不重复的清单。例如下例。

在单元格E2中输入“=LOOKUP(,0/FREQUENCY(1,($A$1:$A$12=$D$2)-COUNTIF($E$1:E1,$B$1:$B$12)),$B$1:$B$12)”,三键回车并向下拖曳即可。

思路:

  • ($A$1:$A$12=$D$2)-COUNTIF($E$1:E1,$B$1:$B$12)部分,符合给定条件的清单中去除在动态区域$E$1:E1中已经列出的数据

  • 利用FREQUENCY函数计频

  • 利用LOOKUP函数返回唯一的清单

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多