FILTER函数是一个超级智能筛子,FILTER+SUM多条件求和!

yumo6662周前 (05-21)技术文章5

FILTER函数在Excel或WPS表格中是一个超级智能筛子,下面我们通过一个简单的案例理解它的强大之处。


如下图所示

A1:D10区域是各部门员工的签单金额表,另外每一单有一个状态,提示这一单是否完成客户金额付款。


我们要做的就是:将符合曙光部且每单金额大于3000的,且排除订单已退款状态下的部门总金额统计出来。也就是要符合3个条件汇总总金额,即多条件求和。






FILTER函数的定义与功能

FILTER函数是Excel和WPS表格工具中的一种动态数组函数,核心功能是根据指定条件从数据区域中筛选出符合条件的记录。


FILTER函数语法为

=FILTER(数组, 条件, [无结果时的返回值])


数组:需要筛选的数据区域。

条件:逻辑表达式。

无结果时的返回值(可选):当无匹配数据时显示的内容



第一步:增加第一个条件,筛选部门“曙光部”


输入函数公式

=FILTER(C2:C10,A2:A10=F2)


FILTER函数筛选C2:C10区域的金额数据。那么我们筛选C2:C10区域内的哪些金额数据呢?我们这样执行筛选,当条件区域A2:A10单元格区域内的部门与F2单元格部门相同时,我们才会筛选C2:C10区域内与之对应的行数据,数组溢出返回结果:

{7300;3500;6870;2470}




第二步:增加第二个条件,在上一步基础上筛选金额大于3000的


输入函数公式

=FILTER(C2:C10,(A2:A10=F2)*(C2:C10>3000))


在条件1(A2:A10=F2)的基础上用乘号连接条件2(C2:C10>3000),即当C2:C10区域内的金额大于3000时,再上一步的筛选基础上再次执行筛选C2:C10区域内与之对应的行数据,数组溢出返回结果:

{7300;3500;6870}




第三步:增加第三个条件,在上两步基础上筛选排除已退款状态的


我们输入函数公式

=FILTER(C2:C10,(A2:A10=F2)*(C2:C10>3000)*(D2:D10<>"已退款"))


在条件1(A2:A10=F2)与条件2(C2:C10>3000)的基础上用乘号连接条件3(D2:D10<>"已退款"),即当D2:D10区域内标注的文字不等于“已退款”时,再在上两步的筛选基础上执行筛选C2:C10区域内与之对应的行数据,数组溢出结果:

{7300;6870}




第四步:求和


最后用SUM函数进行筛选结果求和就行了

=SUM(FILTER(C2:C10,(A2:A10=F2)*(C2:C10>3000)*(D2:D10<>"已退款")))


由于SUM函数天然支持数组参数,无论参数是静态数组(如 {1,2,3})、单元格区域引用,还是动态数组公式生成的溢出结果,都可以进行求和。


比如今天这个例子中就是FILTER函数返回的数组溢出结果{7300;6870},SUM函数对其进行求和的。




但是SUMIF函数就无能为力了

=SUMIF(D2:D10,"<>已退款",FILTER(C2:C10,(A2:A10=F2)*(C2:C10>3000)*(D2:D10<>"已退款")))


比如我们在前两个条件的筛选基础上,用SUMIF函数嵌套第3个条件。原则上SUMIF函数的第一参数D2:D10为第3个条件区域,第二参数增加对条件区域满足"<>已退款"的第3个条件,然后执行对FILTER筛选结果的条件求和。但是回车结束公式时提示公式错误,无法完成


这就是因为SUMIF函数的第3个参数是实际进行求和的单元格区域或引用它不支持直接使用数组。每次调用SUMIF函数时,第3参数求和区域只能指向一个具体的单元格区域或引用,而不能是一个数组。如果需要处理数组溢出的结果,比如本例中的FILTER函数数组溢出结果,就必须使用其他函数或方法来实现了。


相关文章

告别手动筛选!Excel大神的FILTER函数,让数据动态更新快如闪电

大家好!今天要教大家一个让数据处理效率翻10倍的超级函数——FILTER函数!这个Excel 365和2021版本新增的函数,将彻底改变你处理数据的方式。 为什么FILTER函数如此强大?传统的数据筛...

Vlookup过时,新函数公式Filter,太牛了

在新版本的Excel里面,更新了一个Filter新函数公式, 在日常工作中,用途广泛,甚至可以动摇vlookup大哥的身份1、基本用法介绍Filter公式是筛选函数,使用用法,就像你在对数据筛选,把筛...

不支持自动溢出,函数FILTER仍然好用,无论Excel还是WPS

之前两篇关于函数的FILTER的文章备受关注,说明这个函数确实能给大家的工作带来便利。点击查看第一篇点击查看第二篇同时也有不少吐槽,在没有溢出功能的WPS中其效果大打折扣。没有自动溢出,我们就来手动溢...

Excel新函数FILTER太实用了,实例图解3种常见用法(入门篇)

我是【桃大喵学习记】,点击右上方“关注”,每天为你分享职场办公软件使用技巧干货!我们在使用WPS时会经常对Excel数据查询处理,最新版的WPS软件更新了FILTER函数,它虽然是一个条件筛选函数,但...

简称查找全称,Vlookup,Xlookup,Filter哪个公式更厉害

举个工作实例,左边是员工数据表,需要根据员工的简称,快速查找匹配出对应工资数据。今天分享热门的3个公式大PK,看你更喜欢用哪个1、Vlookup函数公式我们需要搭配通配符来查找匹配,通配符*,表示任意...

掌握这九个Excel函数,犹如掌握职场利器

掌握这九个Excel函数,犹如掌握职场利器不同行业的用户对Excel函数的需求可谓是千差万别。例如,处理考勤数据的用户会像匠人一样精雕细琢日期时间相关的函数;生产销售类的用户则更像是导演,他们需要运用...