filter函数是excel2021版本新更新的引用函数,专用于数据筛选场景,在一定程度上,能够代替excel高级筛选功能的作用。
这节我们来了解一个关于filter函数双层嵌套的公式应用,一般来讲,双层嵌套的filter公式基本上都属于交叉查询,且是多条件下的交叉查询。
下面我们来看一个实际案例,如下图所示,左侧数据表是某电商店铺在不同平台和仓库的销售及库存数据表,现在需要批量筛选京东平台华北仓库库存数量的所有数据。

很明显,由于平台和仓库各自包含多个不同数据,这是一个多条件引用,而且我们只需要筛选其中指定的几列数据,即平台、仓库和库存数量的数据,那么,从另一种角度来讲,我们可以将这几个关键字也视为一个条件,只不过它是在横向上的多条件引用。
那么,这样的复合引用场景,该怎么用一个公式批量提取到所有符合条件的数据呢?
我们来看一下使用filter函数双层嵌套公式的效果:

这个公式不需要手动拖动填充,能够直接获得指定列符合条件的所有数据。
其实公式的套路是非常固定的,只不过在行和列引用需求下,有它们对应不同的表达。
下面按照公式步骤,进行分步讲解。
1、常规单条件引用
首先我们来回顾filter函数单条件引用的公式写法,这也是filter函数最为常见的用法。
这里要引用京东的所有数据内容,则可以输入公式为:
=FILTER($A$2:$F$41,$A$2:$A$41=H2)

fitler函数的表达式为:=filter(引用区域,条件)
在官方定义中,其第2参数称为“包括”,但这个词的含义让新手比较难以理解,因此我们直接将它视作为判断条件即可!而所谓判断条件,也就是if函数第1参数的表达。
如上述公式所示,它是由一个单元格区域与某个单元格或值的基础运算,其运算符不限于等号“=”,还可以是“<”、“>”、“<>”等基础运算符号。
这里有一点需要特别注意,即第1参数引用区域的单元格长度,必须与第2参数条件区域的长度是一致的!它可是是纵向上的一致,要可以是横向的一致。