上期分享了快速查询数据的方法(点此链接可访问: excel中如何快速实现数据查询匹配?vlookup函数必杀技),但是上期分享的是正向查询,但是我们平常工作中并不一定所有数据都是可以正向查询的,部分数据可能会需要反向查询,本期给大家分享下反向查询的几种方法。
1.使用VLOOKUP IF函数进行反向查询
输入函数 =VLOOKUP(F3,IF({1,0},C:C,A:A),2,0)
这个函数的套用要点在于理解if函数:IF({1,0},C:C,A:A ,值为 1 即 TRUE 的时候返回 C列单元格,值为 0 即 FALSE 的时候返回 A 列单元格, 重新构造查找区域,也就是 C 列姓名列在前、A 列岗位列在后的新单元格区域。这个时候, VLOOKUP 函数就可以正常查找了。
2. 使用VLOOKUP CHOOSE函数进行反向查询
输入函数 =VLOOKUP(F3,CHOOSE({1,2},C:C,A:A),2,0)
这个函数的套用要点在于理解CHOOSE:CHOOSE({1,2},C:C,A:A),值为 1 时返回第一列数据,即C列单元格,值为 2 时返回第二列数据,返回 A 列单元格, 注意:{1,2},这个参数的第二个值为第几列,返回为相应列数据,示例看下图。, 这样VLOOKUP 函数就可以正常查找了。
3. 使用LOOKUP函数进行反向查询
输入函数 =LOOKUP(1,0/(F3=C:C),A:A)
这里“F3=C:C” 意味着F3等于C列的值,将返回A列对应的值,如此就完成查找了~
4. 使用INDEX MATCH函数进行反向查询
输入函数 =INDEX(A:A,MATCH(F3,C:C,0))
简单说明一下,MATCH 函数也是查找函数,但是它返回的不是单元格的值,而是行号或者列号。比如MATCH(F3,C:C,0),返回的是 10 这个数值,也就是说F3 在C:C的第 10 行这个位置。而 INDEX 函数的作用是,返回 A:A 这个区域第几行的内容,例如=INDEX(A:A,MATCH(F3,C:C,0)),就会返回(A:A)这个区域的第MATCH(F3,C:C,0)行内容,也就是“营销总监” 这个值。通过将这两个函数组合,MATCH 函数返回行号作为INDEX 的第 2 参数,INDEX 函数返回单元格区域对应行号的值,两个函数完美搭配,实现反向查询!
5. 使用INDIRECT MATCH函数进行反向查询
输入函数 =INDEX(A:A,MATCH(F3,C:C,0))
在这里INDIRECT 函数的作用是将文本转换为真正可以使用的公式。比如在单元格里输入 "=A8",回车之后你只能看到 =A8 这几个字符,而不是 A8 这个单元格的内容 项目助理。但是INDIRECT 函数就可以做到;而MATCH 函数返回所查找值在C:C 的第 10 个位置,也就是C10 单元格,这个时候,把这些字符往 INDIRECT 函数里面加进去就行啦,最后类似于 INDERECT("A"&10) 这样的存在。回车之后就返回正确的值了,大家可以验证一下。
好了,今天的分享就到这里了,大家有其他方法的话,也欢迎评论分享哦~
评论 (0)