操作方法
我们先举个实际例子,A列是一些数字, B列是字符串 我们需要求出,A列中所有大于5并且小于10, 且满足相应B列的字符串为“A”的单元格的数目。 即对同时满足多个条件的单元格计数。
在Excel2007及以上版本,我们可以很轻松地使用公式函数 COUNTIFS =COUNTIFS(A:A,">5",A:A,"<10",B:B,"A") 简单得出结果。
但在Excel2003版本中,并没有COUNTIFS函数,那我们怎么办呢? 可以尝试数组公式(需同时按下组合快捷键Ctrl+Shift+Enter): =SUM(IF(B:B="A",1,0)*IF(A:A>5,1,0)*IF(A:A<10,1,0)) 得到结果为4
如果我们需要将这些满足多个条件的单元格,进行求和,怎么办呢? 方法也很简单,只需改一下数组公式: =SUM(IF(B:B="A",A:A,0)*IF(A:A>5,1,0)*IF(A:A<10,1,0)) 注意,同样需要同时按下快捷键组合Ctrl+Shift+Enter
类似地,需要求出满足多个条件的单元格的最大值,可以使用数组公式 =MAX(IF(B:B="A",A:A,0)*IF(A:A>5,1,0)*IF(A:A<10,1,0)) 注意:这与小乐在上一讲中,自定义MAXIF与MINIF函数,有一些本质区别。 那个MAXIF函数,只支持满足1个条件的求最大值。
如果要求出满足多个条件的单元格的最小值, 注意,公式需要做一下调整(IF中的条件为假时,需要填写一个远远大于公式结果范围的数字,这样防止产生错误的结果): =MIN(IF(B:B="A",A:A,100)*IF(A:A>5,1,100)*IF(A:A<10,1,100)) 最后,留一道思考题, 如何求出满足多个条件的单元格的平均值:用AVERAGE函数的数组公式, 看完本文,相信你一定可以轻松写出公式来!