SUM遇到COUNTA,牛A和牛C都来了
今天老祝和大家带来一个很有趣的Excel公式用法,先来看题目:
如下图,表格中记录的是一些户籍信息,A列是“和户主的关系”,B列是人员姓名。
要求如果A列是户主,就在C列统计出这一户的人数。
思考五分钟,我们该从哪里找到突破口呢:
跟着老祝一起来,看看如何优雅地在牛A和牛C之间徘徊。
C2单元格输入公式:
=IF(A2='户主',COUNTA(B2:B20)-SUM(C3:C20),'')
然后双击公式C2右下角的填充柄,OK了:
意不意外,惊不惊喜,简单不简单?
接下来咱们一起说说这个公式的运算过程:
大家都知道,COUNTA函数的作用是用来计数的,SUM函数的作用是用来求和的。本例中,关键的地方是计数的范围和求和的范围。
以C2的公式为例:
COUNTA的范围是(B2:B20),公式使用了相对引用,也就是从当前行的B列开始向下,统计不为空的单元格个数,也就是人员个数。
SUM函数的范围是(C3:C20),注意,这里的求和起始位置,是公式所在单元格C2的下一行,并且也使用了相对引用。
如果公式向下复制,COUNTA的范围和SUM函数的范围都会发生变化,而后面的公式结果,又会被前面的公式再次使用。
为了更好的理解运算过程,咱们可以先从C列最后一个单元格的公式开始看,
C18单元格的公式是:
=IF(A18='户主',COUNTA(B18:B36)-SUM(C19:C36),'')
COUNTA函数计算从B18往下的不为空单元格数量,结果是3。
SUM函数计算从C19往下的总和,结果是0。
3-0,最终统计结果是3。
再看C17单元格的公式:
=IF(A17='户主',COUNTA(B17:B35)-SUM(C18:C35),'')
COUNTA函数计算从B17往下的不为空单元格数量,结果是4。
SUM函数计算从C19往下的总和,结果是3。
4-3,最终统计结果是1。
其他单元格的统计过程也是这样的原理。