第3章:更强大数组FILTER公式8种高能用法FILTER筛选函数可以根据条件筛选出指定的记录,其结果返回的是一个动态数组。以下是FILTER函数的8种高能用法:
1、筛选出符合一个条件的,一对多查询
- 公式:=FILTER(A:C,A:A="高三1班")
- 说明:此公式用于查询“高三1班”的所有记录。FILTER函数的第一参数是要筛选的数据区域(A:C),第二参数是筛选条件(A:A="高三1班"),表示筛选出A列中值为“高三1班”的所有行。
- 图片:
2、筛选出符合一个条件的,一对多查询,容错处理
- 公式:=FILTER(A:C,A:A="高三8班","没找到")
- 说明:此公式用于查询“高三8班”的记录,如果没有找到则显示“没找到”。注意,这里的公式写法有误,正确的应该是=FILTER(A:C,(A:A="高三8班")*1,"没找到"),但为保持原文一致性,这里仍按原文表述。实际上,当FILTER函数的第二参数为FALSE时,会返回第三参数指定的值。
- 图片:
3、筛选出符合2个条件的,多条件一对多查询“且关系”
- 公式:=FILTER(A:C,(A:A="高三2班")*(C:C>600))
- 说明:此公式用于查询“高三2班且成绩大于600”的记录。通过逻辑乘法*实现多条件“且关系”的筛选。
- 图片:
4、筛选出符合3个条件的,多条件一对多查询“或关系”
- 公式:=FILTER(A:C,(A:A="高三3班")*((C:C>600)+(C:C<450)))
- 说明:此公式用于查询“高三3班且(成绩大于600或成绩小于450)”的记录。通过逻辑加法+实现多条件“或关系”的筛选。
- 图片:
5、筛选出符合1个条件的,一对多模糊查询
- 公式:=FILTER(A:C,ISNUMBER(FIND("小",B:B)))
- 说明:此公式用于查询“姓名中包含‘小’”的记录。通过FIND函数查找姓名中是否包含“小”,如果包含则返回数字位置,ISNUMBER函数判断是否为数字,从而筛选出符合条件的记录。
- 图片:
6、筛选出符合2个条件的,多条件一对多查询排序
- 公式:=SORT(FILTER(A:C,(A:A="高三2班")*(C:C>600)),3,-1)
- 说明:此公式用于查询“高三2班且成绩大于600”的记录,并按成绩进行降序排序。SORT函数用于对FILTER函数的结果进行排序,第三参数-1表示降序排序。
- 图片:
7、筛选出符合1个条件的,一对多查询重复的
- 公式:=FILTER(A2:C103,COUNTIFS(B2:B103,B2:B103)>1)
- 说明:此公式用于查询“姓名有重复”的记录。通过COUNTIFS函数计算每个姓名出现的次数,然后筛选出次数大于1的记录。注意,这里使用了数组公式,需要按Ctrl+Shift+Enter键输入。
- 图片:
8、筛选出符合2个条件的,多条件一对多查询去重复的
- 公式:=UNIQUE(FILTER(A:C,(A:A="高三1班")*(C:C>600)))
- 说明:此公式用于查询“高三1班且成绩大于600”的记录,并去除重复的记录。UNIQUE函数用于去除重复值。
- 图片:
以上就是关于FILTER筛选函数的8个高能用法,这些用法在使用一对多查询时,相比多嵌套函数,具有强大的便利性和操作性,能够减少失误,提高工作效率。