前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >yhd-Excel函数之【INDEX+SMALL+IF+ROW】组合函数

yhd-Excel函数之【INDEX+SMALL+IF+ROW】组合函数

作者头像
哆哆Excel
发布2022-10-25 12:36:47
1.3K3
发布2022-10-25 12:36:47
举报
文章被收录于专栏:哆哆Excel

Excel函数学习应用于工作中

【目标】在表2中提取表1中“是否进入复试”中标记为”是”的人的信息

====表1:====

====表2:====

【知识学习】

【INDEX+SMALL+IF+ROW】组合函数:

①难度:★★★☆☆

②作用:实现查找时返回多个符合条件的结果。

③结果放在行的写法:

INDEX(结果列,SMALL(IF(条件,ROW(条件列),4^8),COLUMN(A1)))&

④结果放在列的写法:

INDEX(结果列,SMALL(IF(条件,ROW(条件列),4^8),ROW(A1)))&

⑤结束键:数组公式须同时按CTRL+SHIFT+ENTER三键结束。

【测试代码】

 “学科”在表1中是在B列  

B8=INDEX('面试(初试)评分表'!$B:$B,SMALL(IF('面试(初试)评分表 '!$J$1:$J$99="是",ROW($1:$99),4^8),ROW(A1)))                                                                                 

“姓名”在表1中是在C列 

C8=INDEX('面试(初试)评分表'!$C:$C,SMALL(IF('面试(初试)评分表 '!$J$1:$J$99="是",ROW($1:$99),4^8),ROW(A1)))                                                                                 

“姓名”在表1中是在H列      

D8=INDEX('面试(初试)评分表'!$H:$H,SMALL(IF('面试(初试)评分表 '!$J$1:$J$99="是",ROW($1:$99),4^8),ROW(A1)))             

全部都是    CTRL+SHIFT+ENTER三键结束、下拉,就可以啦   

【代码解析】

IF(J列” 是否进入复试”若是“是”,返回那一行的行号,若“”则返回一个很大的数65536)

SMALL(IF()得到的行号数组从小到大排列,第几小的行号)

INDEX(B列学科列,SMALL()得到的行号)取第几个数据就可以啦

====【测试成功】====

END

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2018-12-16,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 哆哆Excel 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档