OFFICE 365的FILTER函数,颠覆了我对Excel的认知②
最近推送的五篇文章:
在上一篇介绍OFFICE 365的文章中,链接:
OFFICE 365的这些功能,颠覆了我对Excel的认知①
我们介绍了OFFICE 365体验版中强大的动态数组功能,它可以根据公式结果智能地在相应单元格区域显示。从本篇文章开始,我们将介绍几个新增的函数。这些函数可以让以前要用数组公式才能实现的功能,现在用一个函数就可轻松搞定。
先从筛选函数FILTER开始。
在工作中,我们需要根据指定的条件,将符合条件的所有记录从数据源表格式查找过来。比如所有客户的交易明细存在同一张工作表,现需要将指定客户的交易明细查询出来:
filter
英 [ˈfɪltə(r)] 美 [ˈfɪltɚ]
n.滤波器;滤光器;滤色镜;[化] 过滤器
vi.过滤;透过;渗透
vt.过滤;滤除
=FILTER(数据区域,筛选条件,[无满足条件的记录时返回的值])
第二个参数“筛选条件”的计算结果要是TRUE或FALSE,这一点和高级筛选一样。
筛选结果貌似不能指定返回哪些列,如果能改为可根据指定的列标题,返回相应的列就更好了。
技巧:如何指定返回的列?
方法1:在参数1只选定要返回的列
方法2:用IF函数拼结两个不相邻的列
这个技巧我们常用于VLOOKUP的反向查找,详见《“偷懒”的技术:打造财务Excel达人》中的示例:
在这里我们也可用这个技巧来拼接,如下图:
貌似只能拼接二列,如果要拼接多列,可以用SWITCH函数:
要筛选出“西部大区”,并且满足“2≤合同数量≤5”条件的记录,筛选公式为:
=FILTER(A3:E22,(B3:B22="西部大区")*(D3:D22>=2)*(D3:D22<=5))
筛选公式:
=FILTER(A3:E22,E3:E22=MAXIFS(E3:E22,C3:C22,C3:C22))
赞 (0)