VLOOKUP函数保姆级教程-进阶篇

E精精
E精精

WPS函数专家

上一次我们讲解了一下VLOOKUP的基础入门用法,0基础的同学可以通过下面的链接学习一下,再看今天的教程!

01 | 需求说明

今天我们主要讲解VLOOKUP的反向查询,我们都知道VLOOKUP函数只能实现从左往右 的查询

但是下面这样的需求,如果要用VLOOKUP函数实现要怎么办呢?

新手可能会想当然的写出下面的公式,但是这是错误的!

想要实现这个需求,我们需要使用公式调整一下数据源的结构,让他符合VLOOKUP数据源的从左到右要求,也就是换一下姓名和工号的位置!处理这个需求方法有很多

02 | 要点说明

=CHOOSE({1,2},D4:D12,C4:C12)

这个是没有新函数的情况下,非常推荐的写法!CHOOSE第一参数用的{1,2} 这种一个常量数组,表示选择第一个和第二个元素,结果是两列,我们把D列放在了第二参数,C列放到第三参数,相当于互换两列!

当然,if({1,0},……) 使用频率也很高!他和CHOOSE差不多,只是这里的{1,0} 让很多新手困惑,其实他是{TRUE,False}的简写 ,在Excel函数公式中,0表示FALSE,非0表示TRUE

=IF({1,0},D4:D12,C4:C12)

上面的两种都是数组的写法,他们的本质都干一件事情,姓名和工号换一下位置!

当然,最新版本的WPS,我们可以使用HSTACK函数,更加好理解一些!有了新函数,上面的两种写法,现在处理这种需求出现的频率也低了!

=HSTACK(D4:D12,C4:C12)

03 | 核心公式

核心问题解决了,我们只要把上面的作为VLOOKUP的第二参数即可!

=VLOOKUP(L4,HSTACK(D4:D12,C4:C12),2)

以上就是VLOOKUP函数逆向查询的教程,其实现在逆向查询的函数多了,我们选择也多了起来,比如下面的几种写法都是可以的!

04 | 更多解法

比如XLOOKUP查询区域和结果区域分离,使用更加方便!

=XLOOKUP(J4,D:D,C:C)

INDEX+MATCH 这组黄金搭档!

=INDEX(C:C,MATCH(J4,D:D,))

又或者,使用筛选函数!

=FILTER(C:C,D:D=J4)

方法真的太多太多了!更多函数教程,欢迎关注小编!今天的教程就到这里!

江苏省
浏览 2163
收藏
13
分享
13 +1
6
+1
全部评论 6
 
Boyuan
学习
· 河南省
回复
 
HC.旋
666
· 福建省
回复
 
厚积、薄发
打卡
· 山东省
回复
 
uibpqds
· 河南省
回复
 
亂雲飛渡
· 广东省
回复
 
Mr Chen
Mr Chen

创作者俱乐部成员

学习
· 甘肃省
回复