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 工作表函数。 
 
基本运用举例  
       1、返回包含值12的单元格数量 
  =COUNTIFDATA,12 
  2、返回包含负值的单元格数量 
  =COUNTIFDATA"<0" 
  3、返回不等于0的单元格数量 
  =COUNTIFDATA"<>0" 
  4、返回大于5的单元格数量 
  =COUNTIFDATA">5" 
  5、返回等于单元格A1中内容的单元格数量 
  =COUNTIFDATAA1 
  6、返回大于单元格A1中内容的单元格数量 
  =COUNTIFDATA">''&A1 
  7、返回包含文本内容的单元格数量 
  =COUNTIFDATA,''*'' 
  8、返回包含三个字符内容的单元格数量 
  =COUNTIFDATA''???'' 
  9、返回包含单词"GOOD"(不分大小写)内容的单元格数量 
  =COUNTIFDATA,''GOOD'' 
  10、返回在文本中任何位置包含单词"GOOD"字符内容的单元格数量 
  =COUNTIFDATA,"*GOOD*" 
  11(1)、返回包含以单词"AB"(不分大小写)开头内容的单元格数量 
  =COUNTIFDATA,"AB*" 
  11(2)、返回包含以单词"AB"(不分大小写)结尾内容的单元格数量 
  =COUNTIFDATA,"*AB" 
  12、返回包含当前日期的单元格数量 
  =COUNTIFDATATODAY() 
  13、返回大于平均值的单元格数量 
  =COUNTIFDATA">"&AVERAGE(DATA)) 
  14、返回平均值上面超过三个标准误差的值的单元格数量 
  =COUNTIFDATA,">"&AVERAGE(DATA)+STDEV(DATA)*3) 
  15、返回包含值为3-3的单元格数量 
  =COUNTIFDATA3+COUNIFDATA-3 
  16、返回包含值;逻辑值为TRUE的单元格数量 
  =COUNTIFDATATRUE 
  17、统计区域中不为空的单元格个数(数值、文本、空格都算)——(上述第3条:文本也算不等于0,空格不算) 
  =Countif(DATA,"<>") 
  18、只统计文本单元格数量,不统计数值和空格——(上述第7条统计含空格) 
  =COUNTIF(DATA,"><") 
 
具体举例
 
  
&#8203;
  
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,"<>""") 

  不连续区域求个数:  
  三个区域中>=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)
原文地址:https://www.cnblogs.com/gongyanxu/p/8559876.html