Excel统计函数COUNTIF()的常规用法介绍
大神链接:
Excel统计函数COUNTIF()的常规用法介绍(自己整理的)
http://club.excelhome.net/thread-1169705-1-1.html
(出处: ExcelHome技术论坛)
Excel统计函数COUNTIF()的常规用法介绍
COUNTIF函数常规用法一
基本简介作用
用来计算区域中满足给定条件的单元格的个数。
语法讲解 COUNTIF(range,criteria)
Range 为需要计算其中满足条件的单元格数目的单元格区域,即(范围)。
Criteria 为确定哪些单元格将被计算在内的条件,其形式可以为数字、表达式或文本,即(条件)。
例如:条件可以表示为 32、"32"、">32" 或 "apples"。
说明:Microsoft Excel 提供其他函数,可用来基于条件分析数据。例如,若要计算基于一个文本字符串或某范围内的一个数值的总和,可使用 SUMIF 工作表函数。若要使公式返回两个基于条件的值之一,例如某指定销售量的销售红利,可使用 IF 工作表函数。
用来计算区域中满足给定条件的单元格的个数。
语法讲解 COUNTIF(range,criteria)
Range 为需要计算其中满足条件的单元格数目的单元格区域,即(范围)。
Criteria 为确定哪些单元格将被计算在内的条件,其形式可以为数字、表达式或文本,即(条件)。
例如:条件可以表示为 32、"32"、">32" 或 "apples"。
说明:Microsoft Excel 提供其他函数,可用来基于条件分析数据。例如,若要计算基于一个文本字符串或某范围内的一个数值的总和,可使用 SUMIF 工作表函数。若要使公式返回两个基于条件的值之一,例如某指定销售量的销售红利,可使用 IF 工作表函数。
基本运用举例
1、返回包含值12的单元格数量
=COUNTIF(DATA,12)
2、返回包含负值的单元格数量
=COUNTIF(DATA,"<0")
3、返回不等于0的单元格数量
=COUNTIF(DATA,"<>0")
4、返回大于5的单元格数量
=COUNTIF(DATA,">5")
5、返回等于单元格A1中内容的单元格数量
=COUNTIF(DATA,A1)
6、返回大于单元格A1中内容的单元格数量
=COUNTIF(DATA,">''&A1)
7、返回包含文本内容的单元格数量
=COUNTIF(DATA,''*'')
8、返回包含三个字符内容的单元格数量
=COUNTIF(DATA,''???'')
9、返回包含单词"GOOD"(不分大小写)内容的单元格数量
=COUNTIF(DATA,''GOOD'')
10、返回在文本中任何位置包含单词"GOOD"字符内容的单元格数量
=COUNTIF(DATA,"*GOOD*")
11(1)、返回包含以单词"AB"(不分大小写)开头内容的单元格数量
=COUNTIF(DATA,"AB*")
11(2)、返回包含以单词"AB"(不分大小写)结尾内容的单元格数量
=COUNTIF(DATA,"*AB")
12、返回包含当前日期的单元格数量
=COUNTIF(DATA,TODAY())
13、返回大于平均值的单元格数量
=COUNTIF(DATA,">"&AVERAGE(DATA))
14、返回平均值上面超过三个标准误差的值的单元格数量
=COUNTIF(DATA,">"&AVERAGE(DATA)+STDEV(DATA)*3)
15、返回包含值为3或-3的单元格数量
=COUNTIF(DATA,3)+COUNIF(DATA,-3)
16、返回包含值;逻辑值为TRUE的单元格数量
=COUNTIF(DATA,TRUE)
17、统计区域中不为空的单元格个数(数值、文本、空格都算)——(上述第3条:文本也算不等于0,空格不算)
=Countif(DATA,"<>")
18、只统计文本单元格数量,不统计数值和空格——(上述第7条统计含空格)
=COUNTIF(DATA,"><")
1、返回包含值12的单元格数量
=COUNTIF(DATA,12)
2、返回包含负值的单元格数量
=COUNTIF(DATA,"<0")
3、返回不等于0的单元格数量
=COUNTIF(DATA,"<>0")
4、返回大于5的单元格数量
=COUNTIF(DATA,">5")
5、返回等于单元格A1中内容的单元格数量
=COUNTIF(DATA,A1)
6、返回大于单元格A1中内容的单元格数量
=COUNTIF(DATA,">''&A1)
7、返回包含文本内容的单元格数量
=COUNTIF(DATA,''*'')
8、返回包含三个字符内容的单元格数量
=COUNTIF(DATA,''???'')
9、返回包含单词"GOOD"(不分大小写)内容的单元格数量
=COUNTIF(DATA,''GOOD'')
10、返回在文本中任何位置包含单词"GOOD"字符内容的单元格数量
=COUNTIF(DATA,"*GOOD*")
11(1)、返回包含以单词"AB"(不分大小写)开头内容的单元格数量
=COUNTIF(DATA,"AB*")
11(2)、返回包含以单词"AB"(不分大小写)结尾内容的单元格数量
=COUNTIF(DATA,"*AB")
12、返回包含当前日期的单元格数量
=COUNTIF(DATA,TODAY())
13、返回大于平均值的单元格数量
=COUNTIF(DATA,">"&AVERAGE(DATA))
14、返回平均值上面超过三个标准误差的值的单元格数量
=COUNTIF(DATA,">"&AVERAGE(DATA)+STDEV(DATA)*3)
15、返回包含值为3或-3的单元格数量
=COUNTIF(DATA,3)+COUNIF(DATA,-3)
16、返回包含值;逻辑值为TRUE的单元格数量
=COUNTIF(DATA,TRUE)
17、统计区域中不为空的单元格个数(数值、文本、空格都算)——(上述第3条:文本也算不等于0,空格不算)
=Countif(DATA,"<>")
18、只统计文本单元格数量,不统计数值和空格——(上述第7条统计含空格)
=COUNTIF(DATA,"><")
具体举例
​
|
A
|
B
|
1
|
资料
|
资料
|
2
|
苹果
|
32
|
3
|
橘子
|
54
|
4
|
水蜜桃
|
75
|
5
|
苹果
|
86
|
公式 叙述
|
结果
|
=COUNTIF(A2:A5,"苹果") 上述第一栏是苹果的储存格数目
|
2
|
=COUNTIF(B2:B5,">55") 以上第二栏中的数值大于 55 的储存格数目
|
2
|
扩展运用
计算各种类型单元格的个数:
真空单元格 =COUNTIF(data,"=")
真空+假空单元格 =COUNTIF(data,"")
非真空单元格=COUNTIF(data,"<>")
文本型单元格=COUNTIF(data,"*")
判断条件表示不等于单个双引号“"”=COUNTIF(data,"<>""")
真空单元格 =COUNTIF(data,"=")
真空+假空单元格 =COUNTIF(data,"")
非真空单元格=COUNTIF(data,"<>")
文本型单元格=COUNTIF(data,"*")
判断条件表示不等于单个双引号“"”=COUNTIF(data,"<>""")
不连续区域求个数:
三个区域中>=60=SUM(COUNTIF(INDIRECT({"a1:a10","b1:b10","c1:c10"}),">=60"))多区域也可以扩展为多表求个数
两个条件求个数
>10并且<=15 =SUM(COUNTIF(data,">"&{10,15})*{1,-1})
>=10并且<15 =SUM(COUNTIF(data,">="&{10,15})*{1,-1})
>=10并且<=15=SUM(COUNTIF(data,{">=10",">15"})*{1,-1})
>10并且<15=SUM(COUNTIF(data,{">10",">=15"})*{1,-1})
用countif()求区域内不重复值个数
{=sum(1/COUNTIF(A1:A10,A1:A10))} (数组公式)
COUNTIF函数常规用法二
一、求各种类型单元格的个数
(1)求真空单元格单个数:=COUNTIF(data,"=")
(2)真空+假空单元格个数:=COUNTIF(data,"")相当于countblank()函数
(3)非真空单元格个数:=COUNTIF(data,"<>")相当于counta()函数
(4)文本型单元格个数:=COUNTIF(data,"*")假空单元格也是文本型单元格
(5)区域内所有单元格个数:=COUNTIF(data,"<>""")
(6)逻辑值为TRUE的单元格数量:=COUNTIF(data,TRUE)
小说明:
EXCEL单元格内数据主要有以下几类:数值型,文本型,逻辑型,错误值型。其中时间类型也是一种特殊的数值。文本类型的数字是文本型。空单元格:指什么内容也没有的单元格,姑且称之为真空。假空单元格:指0字符的空文本,一般是由网上下载来的或公式得来的,姑且称之为假空。date指单元格区域,该参数不能是数组。
二、求><=某个值的单元格个数
(1)大于50:=COUNTIF(data,">50")
(2)等于50:=COUNTIF(data,50)
(3)小于50:=COUNTIF(data,"<50")
(4)大于或等于50:=COUNTIF(data,">=50")
(5)小于或等于50:=COUNTIF(data,"<=50")
(6)大于E5单元格的值:=COUNTIF(data,">"&$E$5)
(7)等于E5单元格的值:=COUNTIF(data,$E$5)
(8)小于E5单元格的值:=COUNTIF(data,"<"&$E$5)
(9)大于或等于E5单元格的值:=COUNTIF(data,">="&$E$5)
(10)小于或等于E5单元格的值:=COUNTIF(data,"<="&$E$5)
三、等于或包含某N个特定字符的单元格个数
(1)两个字符:=COUNTIF(data,"??")
(2)两个字符并且第2个是B:=COUNTIF(data,"?B")
(3)包含B:=COUNTIF(data,"*B*")
(4)第2个字符是B:=COUNTIF(data,"?B*")
(5)等于“你好”:=COUNTIF(data,"你好")
(6)包含D3单元格的内容:=COUNTIF(data,"*"&D3&"*")
(7)第2字是D3单元格的内容:=COUNTIF(data,"?"&D3&"*")
注:countif()函数对英文字母不区分大小写,通配符只对文本有效
四、两个条件求个数
(1)>10并且<=15=SUM(COUNTIF(data,">"&{10,15})*{1,-1})
(2)>=10并且<15=SUM(COUNTIF(data,">="&{10,15})*{1,-1})
(3)>=10并且<=15=SUM(COUNTIF(data,{">=10",">15"})*{1,-1})
(4)>10并且<15=SUM(COUNTIF(data,{">10",">=15"})*{1,-1})
注:一般多条件计数使用SUMPRODUCT函数,以上方法较少使用,仅供参考。
补充:三个区域计数:三个区域中=60
五、各种特殊统计要求的计算A1:A100为存放数据的区域
(1)非空文本(仅包括可键入文本:=COUNTIF(A1:A100,">=!")
(2)所有非空文本=COUNTIF(A1:A100,">=!")+COUNTIF(A1:A100,">="&CHAR(1))-COUNTIF(A1:A100,">=")或{=SUM(COUNTIF(A1:A100,">="&{"!",""})*{1,-1})+COUNTIF(A1:A100,">="&CHAR(1))}即文本型-含" "(空格)数量
(3)全部可见单元格{=SUM(N(IF(ISERROR(A1:A100),1,SUBSTITUTE(A1:A100,"",""))<>""))},即全部看上去不是空值的单元格(=全部记录-真空-空格)
(4)有效可见单元格=COUNTIF(A1:A100,">=!")+COUNTIF(A1:A100,">="&CHAR(1))-COUNTIF(A1:A100,">=")+COUNT(A1:A100),即所有非空文+数字型数据之和
(5)全部不见单元格(真空+空格+空文本)=COUNTIF(A1:A100,"")+COUNTIF(A1:A100,">=!")+COUNTIF(A1:A100,">=")
(6)空格=COUNTIF(A1:A100,">=")-COUNTIF(A1:A100,">=!")
(7)空文本""=COUNTIF(A1:A100,"")-COUNTIF(A1:A100,"=")
(8)逻辑与错误=COUNTIF(A1:A100,"<>")-COUNTIF(A1:A100,"*")-COUNT(A1:A100)
(1)求真空单元格单个数:=COUNTIF(data,"=")
(2)真空+假空单元格个数:=COUNTIF(data,"")相当于countblank()函数
(3)非真空单元格个数:=COUNTIF(data,"<>")相当于counta()函数
(4)文本型单元格个数:=COUNTIF(data,"*")假空单元格也是文本型单元格
(5)区域内所有单元格个数:=COUNTIF(data,"<>""")
(6)逻辑值为TRUE的单元格数量:=COUNTIF(data,TRUE)
小说明:
EXCEL单元格内数据主要有以下几类:数值型,文本型,逻辑型,错误值型。其中时间类型也是一种特殊的数值。文本类型的数字是文本型。空单元格:指什么内容也没有的单元格,姑且称之为真空。假空单元格:指0字符的空文本,一般是由网上下载来的或公式得来的,姑且称之为假空。date指单元格区域,该参数不能是数组。
二、求><=某个值的单元格个数
(1)大于50:=COUNTIF(data,">50")
(2)等于50:=COUNTIF(data,50)
(3)小于50:=COUNTIF(data,"<50")
(4)大于或等于50:=COUNTIF(data,">=50")
(5)小于或等于50:=COUNTIF(data,"<=50")
(6)大于E5单元格的值:=COUNTIF(data,">"&$E$5)
(7)等于E5单元格的值:=COUNTIF(data,$E$5)
(8)小于E5单元格的值:=COUNTIF(data,"<"&$E$5)
(9)大于或等于E5单元格的值:=COUNTIF(data,">="&$E$5)
(10)小于或等于E5单元格的值:=COUNTIF(data,"<="&$E$5)
三、等于或包含某N个特定字符的单元格个数
(1)两个字符:=COUNTIF(data,"??")
(2)两个字符并且第2个是B:=COUNTIF(data,"?B")
(3)包含B:=COUNTIF(data,"*B*")
(4)第2个字符是B:=COUNTIF(data,"?B*")
(5)等于“你好”:=COUNTIF(data,"你好")
(6)包含D3单元格的内容:=COUNTIF(data,"*"&D3&"*")
(7)第2字是D3单元格的内容:=COUNTIF(data,"?"&D3&"*")
注:countif()函数对英文字母不区分大小写,通配符只对文本有效
四、两个条件求个数
(1)>10并且<=15=SUM(COUNTIF(data,">"&{10,15})*{1,-1})
(2)>=10并且<15=SUM(COUNTIF(data,">="&{10,15})*{1,-1})
(3)>=10并且<=15=SUM(COUNTIF(data,{">=10",">15"})*{1,-1})
(4)>10并且<15=SUM(COUNTIF(data,{">10",">=15"})*{1,-1})
注:一般多条件计数使用SUMPRODUCT函数,以上方法较少使用,仅供参考。
补充:三个区域计数:三个区域中=60
五、各种特殊统计要求的计算A1:A100为存放数据的区域
(1)非空文本(仅包括可键入文本:=COUNTIF(A1:A100,">=!")
(2)所有非空文本=COUNTIF(A1:A100,">=!")+COUNTIF(A1:A100,">="&CHAR(1))-COUNTIF(A1:A100,">=")或{=SUM(COUNTIF(A1:A100,">="&{"!",""})*{1,-1})+COUNTIF(A1:A100,">="&CHAR(1))}即文本型-含" "(空格)数量
(3)全部可见单元格{=SUM(N(IF(ISERROR(A1:A100),1,SUBSTITUTE(A1:A100,"",""))<>""))},即全部看上去不是空值的单元格(=全部记录-真空-空格)
(4)有效可见单元格=COUNTIF(A1:A100,">=!")+COUNTIF(A1:A100,">="&CHAR(1))-COUNTIF(A1:A100,">=")+COUNT(A1:A100),即所有非空文+数字型数据之和
(5)全部不见单元格(真空+空格+空文本)=COUNTIF(A1:A100,"")+COUNTIF(A1:A100,">=!")+COUNTIF(A1:A100,">=")
(6)空格=COUNTIF(A1:A100,">=")-COUNTIF(A1:A100,">=!")
(7)空文本""=COUNTIF(A1:A100,"")-COUNTIF(A1:A100,"=")
(8)逻辑与错误=COUNTIF(A1:A100,"<>")-COUNTIF(A1:A100,"*")-COUNT(A1:A100)