今天继续介绍Excel中的新函数系列:FILTER。 就在准备这篇文章时,我又一次感受到了Excel新函数的威力,不得不说,包括我们前面介绍过的SORT,UNIQUE,今天介绍的FILTER在内的Excel新函数,让以前必须写很复杂的公式才能解决的问题变得轻而易举。 闲言碎语不多谈。直接来看这个函数吧! 语法 FILTER函数的语法如下: 这个函数有3个参数:
用法 结合实例来看这些参数,理解的更清楚一些。 假设我们的数据如下: 如果我们希望在其中查找所有开发部参加的项目,就可以使用下面的公式: =FILTER(B3:F9,C3:C9="开发部","未找到") 结果返回了两个项目。值得提醒的是,这个函数返回的是个动态数组。 如果我们将第二个参数的“开发部”写成了“开发1部”,结果就会返回第三个参数: 多个条件 FILTER函数的第二个参数实际上就是一个条件表达式,类似于IF函数的第一个参数。因此,就有多个条件的问题。我们下面通过两个例子来看看如何在FILTER函数中使用多个条件。 例1 两个同时成立的条件筛选 例如,我们希望返回项目名称是“李宁订货会项目”,并且由"咨询部"参加的项目 可以使用公式: =FILTER(B3:F9,(B3:B9="李宁订货会项目")*(C3:C9="咨询部"),"未找到") 这个多个条件的写法我们在IF和SUMPRODUCT等函数中经常见到。 例2 一个条件成立即可的多条件筛选 例如,我们希望返回所有的“李宁订货会项目”和所有“咨询部”参加的项目。可以使用公式: =FILTER(B3:F9,(B3:B9="李宁订货会项目")+(C3:C9="咨询部"),"未找到") 找不到时返回多项 在前面的例子中,我们看到,如果第二个参数返回值都是FALSE,筛选不出任何结果,就会返回第三个参数: 但是这个返回值容易造成误解:好像这个函数的返回值只占这一个单元格似的。实际上,正常情况下,这个函数返回一个区域,这个区域的宽度跟第一个参数的宽度是一致的。 为了避免这种情况,我们可以使用下面的方法让第三个参数返回多个值: =FILTER(B3:F9,C3:C9="开发1部",{"项目未找到","部门未找到",0,0,0}) 总结 FILTER函数还有一些很重要的应用。其中部分应用以前也可以实现,就是得用非常复杂的方法。现在,我们可以利用FILTER函数(和其他新函数)来简化这些应用。具体内容我们后面陆续为大家介绍。
|
|