Countif函数是Microsoft Excel中对指定区域中符合指定条件的单元格计数的一个函数,在WPS,Excel2003和Excel2007等版本中均可使用。countif函数的语法为:COUNTIF(range,criteria)。
Range:需要计算其中满足条件的单元格数目的单元格区域。
Criteria参数:为确定哪些单元格将被计算在内的条件,其形式可以为数字、表达式或文本。
用法
一、求各种类型单元格的个数
(1)求真空单元格个数:=COUNTIF(数据区,"=")。
(2)非真空单元格个数:=COUNTIF(数据区,"<>")相当于counta()函数。
(3)文本型单元格个数:=COUNTIF(数据区,"*")假空单元格也是文本型单元格。
(4)区域内所有单元格个数:=COUNTIF(数据区,"<>"""),如果数据区内有",该公式不成立。
(5)逻辑值为TRUE的单元格数量=COUNTIF(数据区,TRUE)。
小说明:
EXCEL单元格内数据主要有以下几类:数值型,文本型,逻辑型,错误值型。其中时间类型也是一种特殊的数值。文本类型的数字是文本型。
空单元格:指什么内容也没有的单元格,姑且称之为真空。
假空单元格:指0字符的空文本,一般是由网上下载来的或公式得来的,姑且称之为假空。
date指单元格区域,该参数不能是数组。
二、求大于或小于某个值的单元格个数
(1)大于50=COUNTIF(数据区,">50")。
(2)等于50=COUNTIF(数据区,50)。
(3)小于50=COUNTIF(数据区,"<50")。
(4)大于或等于50=COUNTIF(数据区,">=50")。
(5)小于或等于50=COUNTIF(数据区,"<=50")。
(6)大于E5单元格的值=COUNTIF(数据区,">"&$E$5)。
(7)等于E5单元格的值=COUNTIF(数据区,$E$5)。
(8)小于E5单元格的值=COUNTIF(数据区,"<"&$E$5)。
(9)大于或等于E5单元格的值=COUNTIF(数据区,">="&$E$5)。
(10)小于或等于E5单元格的值=COUNTIF(数据区,"<="&$E$5)。
三、等于或包含某N个特定字符的单元格个数
(1)两个字符=COUNTIF(数据区,"?")。
(2)两个字符并且第2个是B=COUNTIF(数据区,"?B")。
(3)包含B=COUNTIF(数据区,"*B*")。
(4)第2个字符是B=COUNTIF(数据区,"?B*")。
(5)等于“你好”=COUNTIF(数据区,"你好")。
(6)包含D3单元格的内容=COUNTIF(数据区,"*"&D3&"*")。
(7)第2字是D3单元格的内容=COUNTIF(数据区,"?"&D3&"*")。
注:countif()函数对英文字母不区分大小写,通配符只对文本有效。
四、两个条件求个数
(1)>10并且<=15=SUM(COUNTIF(数据区,">"&{10,15})*{1,-1})。
(2)>=10并且<15=SUM(COUNTIF(数据区,">="&{10,15})*{1,-1})。
(3)>=10并且<=15=SUM(COUNTIF(数据区,{">=10",">15"})*{1,-1})。
(4)>10并且<15=SUM(COUNTIF(数据区,{">10",">=15"})*{1,-1})。
注:一般多条件计数使用SUMPRODUCT函数,以上方法较少使用,仅供参考。
补充:三个区域计数:三个区域中>=60=SUM(COUNTIF(INDIRECT({"a46:a48","b48:b50","c47:c48"}),">=60"))。
补充:(集合运算法)
统计范围,比如5<=x<=7
可以分解为(x>=5)-(x>7)
写为函数:
=countif(range,">=5")-countif(range,">7")
这样就可以利用集合的运算知识了。同样实现了上面两个条件求个数相同的目的,并且更简单易于理解。
特殊统计
各种特殊统计要求计算A2:A32为存放数据的区域
(1)非空文本(仅包括可键入文本)=COUNTIF(A2:A32,">=!")。
(2)所有非空文本=COUNTIF(A2:A32,">=!")+COUNTIF(A2:A32,">="&CHAR(1))-COUNTIF(A2:A32,">=")或{=SUM(COUNTIF(A2:A32,">="&{"!",""})*{1,-1})+COUNTIF(A2:A32,">="&CHAR(1))}。
(3)全部可见单元格{=SUM(N(IF(ISERROR(A2:A32),1,SUBSTITUTE(A2:A32,"",""))<>""))}。
(4)有效可见单元格=COUNTIF(A2:A32,">=!")+COUNTIF(A2:A32,">="&CHAR(1))-COUNTIF(A2:A32,">=")+COUNT(A2:A32)。
(5)全部不见单元格(真空+空格+空文本)=COUNTIF(A2:A32,"")-COUNTIF(A2:A32,">=!")+COUNTIF(A2:A32,">=")。
(6)空格=COUNTIF(A2:A32,">=")-COUNTIF(A2:A32,">=!")。
(7)空文本""=COUNTIF(A2:A32,"")-COUNTIF(A2:A32,"=")。
(8)逻辑与错误=COUNTIF(A2:A32,"<>")-COUNTIF(A2:A32,"*")-COUNT(A2:A32)。
说明
EXCEL单元格内数据主要有以下几类:数值型,文本型,逻辑型,错误值型。其中时间类型也是一种特殊的数值。文本类型的数字是文本型。
空单元格:指什么内容也没有的单元格,姑且称之为真空。
假空单元格:指0字符的空文本,一般是由网上下载来的或公式得来的,姑且称之为假空。
date指单元格区域,该参数不能是数组
该文章由作者:【闽发论坛】发布,本站仅提供存储、如有版权、错误、违法等相关信息请联系,本站会在1个工作日内进行整改,谢谢!