Excel2003数组公式求满足多个条件的单元格数目

作者:风筝 | 创建时间: 2023-07-09
我们知道在Excel2007+版本,可以使用COUNTIFS函数,求出同时满足多个单元格区域的多个条件的单元格数目,但在Excel2003中,如何实现同样的功能呢?本文分享给大家,兼容2003、2007及以上Excel版本的数组公式,求出同...
Excel2003数组公式求满足多个条件的单元格数目

操作方法

我们先举个实际例子,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函数的数组公式, 看完本文,相信你一定可以轻松写出公式来!

温馨提示

数组公式编辑时需要同时按下Ctrl+Shift+Enter
本文讲的数组公式更为通用,注意要与MAXIF、MINIF自定义函数有所区别
点击展开全文

更多推荐