VLOOKUP倒序查找

有点基础的同学都知道VLOOKUP函数的查找方向是从上向下的,即当有多个符合条件的数据时,公式结果会返回最上面的那个。

但在实际工作中,有时会遇到要求你从下向上倒序查找的需求,比如提取最新报价、查询最新库存、查询项目最新状态等等。

这时候我看到80%的同学都还在用最笨的方法计算,也就是先自己把原始数据复制到另一个辅助区域,再添加序号,将原始数据的顺序从下到上重新排列一遍,再用VLOOKUP公式查找数据。

虽然这方法笨是笨了点,但好在费点劲也能解决问题,但我希望你能完美的解决此类问题,所以本文的解决方案也是为了帮大家拓宽视野,多了解一些VLOOKUP函数的灵活应用方法,同时激发同学们更丰富的案例处理思路。

今天要讲的就是VLOOKUP从下向上倒序查找的技术,看完觉得好的,记得去底部点个好看再分享给朋友,我会根据大家的反馈调整发文内容及写法。

问题描述

下图左侧A列放置的是报价日期,B列是保价商品,C列是报价。

要求在右侧按照E2单元格要求查询的商品,查找其最新报价。

实质上这个问题就是要求VLOOKUP从下向上倒序查找,这应该怎么做呢?

为了让大家清晰案例效果,可以先看下面的效果演示,自己思考一下。

效果演示

下图是我做好公式以后的效果演示,便于你理解案例要求和捋顺思路。

右侧黄色公式区域,根据要求查询的商品,自动把最新报价返回到F2单元格。

为了方便你快速查看结果,我在报表里加入了可视化自动突出显示目标结果,E2的查询条件变更后,左侧数据源中的该商品所在行都会黄色填充。(这种数据可视化技术在四期特训营专门有一章精讲过)

下图是写好公式以后的演示效果

(下图为gif动图演示)

从上面的动图演示可见,无论选择什么商品查询,公式都可以很智能的把你想要的结果查找出来。

在看下面的解决方案之前,请你先独立思考,带着思路和问题继续向下看。

解决方案

思路提示:解决这个问题的关键点,是解决倒序查找问题,也就是构建VLOOKUP函数的查找区域,即VLOOKUP函数的第二参数。

这里我们依然使用多函数组合来进行技术实现,只不过需求不同,组合方法随之变更即可。

F2单元格输入如下数组公式,按ctrl+shift+enter三键输入:

=VLOOKUP(E2,IF({1,0},T(OFFSET(B1,100-ROW(1:99),)),N(OFFSET(C1,100-ROW(1:99),))),2,)

如下图所示。

(下图为公式示意图)

一句话解析:

此公式共3个关键点,OFFSET函数负责根据要求引用数据区域;T或N函数根据要返回的数据格式将OFFSET返回的引用区域能够让VLOOKUP函数接收;IF函数将T或N配合OFFSET引用的两个区域联结在一起作为VLOOKUP函数的第二参数。

这三个关键点缺一不可,全部具备才能使公式返回正确结果,如果你差一点也无法搞定问题,这也是考量你综合实力是否过硬的时刻。

此案例依然是一个使用多函数组合嵌套创造条件构建所需的内存数组解决问题的经典案例,你会发现处理复杂问题都需要用到这点,万变不离其宗。

到这此教程还没结束,本文再多提供一种便捷解法,请往下看。

再加一种解决方案

思路提示:虽然本文主要扩展VLOOKUP解法,但这类案例最优解法是用LOOKUP万能公式,选择合适的方法有助于更快捷的解决问题。

G2单元格输入如下公式,

=LOOKUP(1,0/(B2:B13=E2),C2:C13)

如下图所示。

(下图为公式示意图)

一句话解析:

此公式是LOOKUP万能公式的经典应用,在二期特训营的函数初级班用超清视频同步演示专门讲解过多个函数的万能公式及变通解法,其中已包含LOOKUP万能公式,所以此处不再赘述。

万能公式的真正万能之处在于使用人的灵活变通,就好比即使是同样的武术套路,这其中的发招、接招、套招、拆招、解招等变化数不胜数,将其有机组合后的变幻打法还会更多,真正的武林高手并不是比别人多会很多种功夫,而是同样的功夫能够用到极致。

我结合16年的职场经验,用了18个月的时间整理和提炼,Excel函数相关的思路、技术以及原理解析,在下面的3门成体系的函数课程里面已经系统完整涵盖。

(0)

相关推荐

  • Excel技巧连载19和20:隔列汇总和VLOOKUP函数NA错误讲解

    Excel技巧19:隔列求和汇总 学员的表格,包含了很多列,在这里我们只摘取了前面3天的数据. 问题:需要汇总每人每天的拣货.复核.打包数量. 小伙伴在没有学咱们的Excel课程之前,基本就是各个单元 ...

  • 教你一招,秒杀那些装B的Excel“高手”

    https://m.toutiao.com/is/JgWxT1c/ 在函数的学习和使用过程中,你是不是遇到过这种情况:看到一个很牛逼的函数公式,一长串,怎么也看不懂,只能用最原始的方法来检测,最后似懂 ...

  • excel中match函数可以怎么用?

    Match函数有以下功能 1.确定列表中某个值的位置: 2.对某个输入值进行检验,确定这个值是否存在某个列表中: 3.判断某列表中是否存在重复数据: 4.定位某一列表中最后一个非空单元格的位置. 不理 ...

  • 谁说VLOOKUP函数不能倒序查找?

    点击上方 蓝色 文字  关注我们吧! 送人玫瑰,手有余香,请将文章分享给更多朋友 动手操作是熟练掌握EXCEL的最快捷途径! 熟悉VLOOKUP函数的朋友们都知道它的查找方向是从上到下的,即当有多个符 ...

  • VLOOKUP反向查找中的IF({1,0}

    这个对于新手比较难理解,经常有人来问,今天我们就写一篇,希望能让大家彻底搞清楚! 如图就是经典的VLOOKUP反向查找! 要搞懂他,我们需要先搞懂以下几个知识! 知识点1:IF是怎么计算的? 重点:I ...

  • VLOOKUP函数查找技巧

    情形1:查找数值的数据类型不一致 相同的值但以不同的数据类型来存储,对于VLOOKUP函数来说是不同的. 在单元格中,可以存储不同类型的数据,例如数字.文本字符串.日期和布尔值.在单元格中输入4000 ...

  • Vlookup函数查找易犯的错误以及解决方法

    Vlookup函数是一个非常好用的查找函数,但由于种种原因,实际使用时会遇到种种让人搞不明白的错误,本文对各种常见错误进行总结并介绍相关解决方法.文章比较长,可以收藏起来慢慢看. ... 1 一.函数 ...

  • Excel | VLOOKUP列查找,HLOOKUP行查找

    清晨六点,与您相约 问题来源 前几天,韩老师讲了Excel204 | VLOOKUP函数使用方法之提升篇--区间查找.等级评定.模糊查找,其中,区间查找折扣率的公式如下: 今天,就有朋友说:韩老师,公 ...

  • 我用Vlookup函数查找两表,让同事惊呆了!(附案例文件)

    我用Vlookup函数查找两表,让同事惊呆了!(附案例文件)

  • VLOOKUP反向查找中的IF({1,0}是什么意思?

    今天要说的就是关于VLOOKUP反向查找常见的IF({1,0} 这个对于新手比较难理解,经常有人来问,今天我们就写一篇,希望能让大家彻底搞清楚! 如图就是经典的VLOOKUP反向查找! 要搞懂他,我们 ...

  • PQ实战 | 这种类似VLOOKUP的查找为什么不对?

    今天是一期网友的问题答疑!主要是数据源不规范到底的简单问题复杂化! 提供两种解法,一种是Power Query主题解法,然后补充一种工作表函数解法 需求说明: 1.查找内容,可能有多个,每个都要到数据 ...

  • 《偷懒的技术1》答疑011:VLOOKUP逆向查找公式详析

    《偷懒的技术1》答疑011:VLOOKUP逆向查找公式详析