添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接
相关文章推荐
逼格高的楼梯  ·  HTML canvas ...·  1 年前    · 
买醉的梨子  ·  azure speech to text ...·  1 年前    · 
INDEX+MATCH--真正的查询之王:反向查找、多条件合并查找、双向查找轻松搞定

INDEX+MATCH--真正的查询之王:反向查找、多条件合并查找、双向查找轻松搞定

查找数据,大家首先想到的是VLOOKUP函数。

但是VLOOKUP有一个「耿直」的要求——查找值必须在表格 首列 。不满足这个条件,就没办法用VLOOKUP。

比如,上面这张表,我们只能用VLOOKUP根据工号匹配姓名,却不能反向根据姓名匹配工号。

如果一旦我们的表格不满足这个条件,查找值在右侧,而要匹配的目标值在左侧,怎么进行匹配呢?

今天给大家介绍一对黄金组合——INDEX+MATCH,不但可以正向查找,反向查找也易如反掌。

MATCH函数可以根据元素返回元素在列表中的位置,而INDEX是一个索引函数,它有两种用法:

  • 指定列表和序号,返回对应位置的元素
  • 指定表格以及行号、列号,返回对应位置的元素

01 反向查找

在工资表中按照"姓名"查"工号"——

INDEX(A2:A8,MATCH(A11,B2:B8,0))

其中,

MATCH(A11,B2:B8,0)

查找姓名(A11)在姓名列(B2:B8)的位置 INDEX(A2:A8,MATCH(A11,B2:B8,0)) 根据位置返回工号列(A2:A8)对应的工号


02 多条件查找

在工资表中按照"部门"和"职务"查"姓名"——

{=IFERROR(INDEX(B2:B8,MATCH(A11&B11,D2:D8&E2:E8,0)),"查无此人")}

MATCH(A11&B11,D2:D8&E2:E8,0)

MATCH的第二个参数支持合并后数组,所以将查找条件合并后进行合并查找

INDEX(B2:B8,MATCH(A11&B11,D2:D8&E2:E8,0))

查找到后再用INDEX从姓名列取对应的值

IFERROR(INDEX(B2:B8,MATCH(A11&B11,D2:D8&E2:E8,0)),"查无此人")

错误值处理:查不到时提示"查无此人"

{=IFERROR(INDEX(B2:B8,MATCH(A11&B11,D2:D8&E2:E8,0)),"查无此人")}

公式中含有数组运算,所以公式需要按Ctrl+Shift+Enter三键完成输入


03 双向查找

查找每个人的"基本工资","实发工资"等工资项——

INDEX(A1:L8,MATCH(A11,B1:B8,0),MATCH(B11,A1:L1,0))

MATCH(A11,B1:B8,0) 查姓名(A11)在工资表(B1:B8)中的行的位置

MATCH(B11,A1:L1,0) 查工资项(B11)在工资表中所在列的位置

INDEX(A1:L8,MATCH(A11,B1:B8,0),MATCH(B11,A1:L1,0)) 根据上面的行、列位置取值

以上就是关于INDEX+MATCH两个函数搭配的使用方法,可以说太横了。相比VLOOKUP,他们才是真正的查询之王!

本文首发于公众号 张老师办公室

如需转载,请联系微信:BGJenny


升值邦VIP+线上合伙人限量招募

只需投入199元

一边学习成长,一边开启副业收入


编辑于 2021-07-16 17:21