社区主页 文章详情

[Excel]复杂条件关系下的单元格计数法

效率火箭 11-04 16:02 + 关注

[Excel]复杂条件关系下的单元格计数法

[Excel]复杂条件关系下的单元格计数法


小伙伴们可能都知道,Excel中COUNTIF函数是用以单条件单元格计数,而COUNTIFS函数则是用以多条件且必须同时满足(AND逻辑)的单元格计数。但若需要针对复杂逻辑条件的单元格计数时,我们又有什么法子呢?

多条件计数之"OR"

[Excel]复杂条件关系下的单元格计数法

这可能是简单的一种多条件逻辑关系,那就是"或"——只需要满足多个条件中的一种即可。

>>>方法一:COUNTIF+COUNTIF

要实现此种逻辑关系计数的最简单方式就是讲COUNTIF相加。

[Excel]复杂条件关系下的单元格计数法

比如:

=COUNTIF(A2:A11,"苹果")+COUNTIF(A2:A11,"草莓")

当然,你也可以选择使用:

=COUNTIF(A2:A11,F1)+COUNTIF(A2:A11,F2)

虽然此法特别易懂,但是如果条件非常多,那么整个函数可能会显得特别繁琐。这时,可能会更适合以下的方法。

>>>方法二:COUNTIF配合数组

[Excel]复杂条件关系下的单元格计数法

如果条件很多,可以考虑将条件以数组的形式体现在COUNTIF函数中,这样可以快速简化繁琐的COUNTIF叠加。比如,

=SUM(COUNTIF(A2:A11,{"苹果","草莓","橙子"}))

不过要注意的是,如果COUNTIF函数中的条件部分是以一个区域进行表达的,那么要使用Ctrl + Shift +Enter来完成函数计算哦!

比如,

[Excel]复杂条件关系下的单元格计数法

{=SUM(COUNTIF(A2:A11,F1:F3))}

>>>方法三:SUMPRODUCT函数

[Excel]复杂条件关系下的单元格计数法

事实上,利用SUMPRODUCT函数进行多条件计算火箭君已经给大家具体讲过了。

多条件计数之"OR-AND"

[Excel]复杂条件关系下的单元格计数法

当多条件之间出现不止一层逻辑关系时,比如说:

>>>方法一:COUNTIFS+COUNTIFS+...

[Excel]复杂条件关系下的单元格计数法

和COUNTIF函数在处理单一层次多条件的情况类似,COUNTIFS函数也会使得函数变得相对繁琐。表达式:

=COUNTIFS(A2:A11,"苹果",C2:C11,"签收")+COUNTIFS(A2:A11,"草莓",C2:C11,"签收")+COUNTIFS(A2:A11,"橙子",C2:C11,"签收")

>>>方法二:COUNTIFS配合数组

[Excel]复杂条件关系下的单元格计数法

COUNTIFS配合上数组之后,显然就大大缩短了函数的长度。尤其是如果条件的层次更多之后,这种效果更为明显。

表达式:

=SUM(COUNTIFS(A2:A11,{"苹果","草莓","橙子"},C2:C11,"签收"))

多条件计数之"OR-OR-AND"

[Excel]复杂条件关系下的单元格计数法

如果碰上了两层条件,而每层又有超过2个互为“或”的条件,那么可以尝试使用COUNTIFS配合2个数组进行计算。

[Excel]复杂条件关系下的单元格计数法

需要特别注意的是,COUNTIFS中的第一个数组应该是一个横向的数组,因此需要用逗号隔开其中的元素;而第二个数组应该是一个纵向的数组,因此需要用分号隔开其中的元素。这样Excel才能将两个数组组合成一个二维数组从来进行计算。

表达式:

=SUM(COUNTIFS(A2:A11,{"苹果","草莓","橙子"},C2:C11,{"签收";"在途"}))


由于Excel只支持2维数组的计算,因此如果有n层条件的话,恐怕是无法使用COUNTIFS这样的函数来实现了。

那么问题来了,如果有3层以上的条件,而每层条件内,多个条件又以“或”的逻辑相关联,那该怎么办呢?

欢迎大家在留言中互动。

未经授权,不得转载

展开阅读全文

打开App,查看更多好文内容
全部评论 (1)
mfllfm23
0
11-04 20:59

这是要疯的节奏嘛 一天刷屏了

打开App,查看更多好文和评论
猜你喜欢
编辑精选
3
17
1
你已经点过赞了
新浪微博 QQ空间 微信好友 豆瓣
当前为触屏版
热门搜索