一、假设要对A列为张三,B列为收入的数据个数,(假设数据在第2行到第100行)
则
2003版可以用SUMPRODUCT函数,公式可以写成:
=SUMPRODUCT((A2:A100="张三")*(B2:B100="收入"))
2007版可以用COUNTIFS函数,公式可以写成:
=COUNTIFS(A:A,"张三",B:B,"收入")
二、相关函数定义
1.SUMPRODUCT函数定义
在给定的几组数组中,将数组间对应的元素相乘,并返回乘积之和。
语法
SUMPRODUCT(array1,array2,array3,
...)
Array1, array2, array3, ... 为 2 到 30 个数组,其相应元素需要进行相乘并求和。
说明
数组参数必须具有相同的维数,否则,函数 SUMPRODUCT 将返回错误值 #VALUE!。
函数 SUMPRODUCT 将非数值型的数组元素作为 0 处理。
2.COUNTIFS函数定义
计算多个区域中满足给定条件的单元格的个数。
语法
countifs(criteria_range1,criteria1,criteria_range2,criteria2,…)
criteria_range1为第一个需要计算其中满足某个条件的单元格数目的单元格区域(简称条件区域),criteria1为第一个区域中将被计算在内的条件(简称条件),其形式可以为数字、表达式或文本。例如,条件可以表示为 48、"48"、">48" 、 "广州" 或 A3;同理,criteria_range2为第二个条件区域,criteria2为第二个条件,依次类推。最终结果为多个区域中满足所有条件的单元格个数。
说明
Excel2007中新增函数,为countif函数的扩展。用法与countif类似,但countif针对单一条件,而countifs可以实现多个条件同时求结果。
可以用一个过渡的方法,就是在某一列(这里为F列)第二行加入如下公式:
=IF(B2="检察员",IF(C2="本科",1,0),0),复制到相应的行,
然后在要写入结果的单元格中写:
=COUNTIF(E2:E11,">0")
2题可参照此做法
1、不用中间环节直接实现好像作不到。
2、=COUNTIF(Sheet1!B2:B11,"检察员")
随便找一空白单元格,输入 =sumproduct((b2:b20="检察员")*(c2:c20=“本科”)*1)
就可以了
举例如下:
=SUM((a1:a9="检查员")*(b1:b9="本科"))
解释:逻辑表达式返回的要么是TRUE(相当于1),要么是FALSE(相当于0)。如果进行算术运算,规则如下:
TRUE*TRUE=1
TRUE*FALSE=0
FALSE*TRUE=0
FALSE*FALSE=0
那么表达式(a1="检查员")*(b1="本科"),只有在a1是检查员,b1是本科的情况下,才会返回1,其它情况是0.
因为是数组公式,输入完毕后,要按ctrl+shift+enter确认.
统计多列同时符合条件的可以类推。