如何批量查找EXCEL表中符合条件的数据

上面一个表中的每个学生,要求按照分数查找下表里面所有其可以报考的学校,并在其名字后面显示出来,要怎样编写函数公式。

可以试试这个公式=OFFSET($A$1,SMALL(IF($C$14:$C$20<=$B2,ROW($C$14:$C$20),65536),COLUMN(A1))-1,0) ,同时按下Ctrl+Shift+Enter输入数组公式,然后向下,向右拉至出现0为止(可以设置零值不显示)

如图:

公式中的区域请自行替换,或者,你给出你的数据所在的单元格区域,我帮你改好。

追问

是两张独立的数据表,像这样

还要请教一下,如果有多个筛选条件要怎么写?比如除了分数还要求学校地点也要符合。

追答

假设你的第二张表的名称为“学校信息”,
1、不匹配地址:d2=OFFSET(学校信息!$A$1,SMALL(IF(学校信息!$B$2:$B$27<=$B2,ROW(学校信息!$B$2:$B$27),65536),COLUMN(A1))-1,0),同是按下Ctrl+Shift+Enter三键
2、若匹配地址:
D2=OFFSET(学校信息!$A$1,SMALL(IF((学校信息!$B$2:$B$27<=$B2)*(学校信息!$C$2:$C$27=$C2),ROW(学校信息!$B$2:$B$27),65536),COLUMN(A1))-1,0)
,同是按下Ctrl+Shift+Enter三键

追问

如果分数、地点两个条件只需要满足一个即可,又应该怎么写?可以使用嵌套语句吗?

追答

把公式的IF((学校信息!$B$2:$B$27<=$B2)*(学校信息!$C$2:$C$27=$C2)这部分里*变成+,IF((学校信息!$B$2:$B$27<=$B2)+(学校信息!$C$2:$C$27=$C2),其他不变,即可。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2020-01-22
可以试试这个公式=OFFSET($A$1,SMALL(IF($C$14:$C$20<=$B2,ROW($C$14:$C$20),65536),COLUMN(A1))-1,0)
,同时按下Ctrl+Shift+Enter输入数组公式,然后向下,向右拉至出现0为止(可以设置零值不显示)
如图:
公式中的区域请自行替换,或者,你给出你的数据所在的单元格区域,我帮你改好。
第2个回答  2015-07-06
=index(学校那列,match(学生分数单元格,学校分数线那列,0))
即可