让你眼花缭乱的匹配函数反查技巧

小编已经连续写了三期关于匹配函数的用法,匹配函数的扛把子(老大)肯定是Vlookup函数莫属,但是Vlookup函数有一个问题,就是要查找的内容,必须在查找内容的第一列,所以就有这样的问题了!

如果想根据姓名反查序号怎么做呢???普通的Vlookup做不到哇!!

备注:上期有人说我给十元的评分太低了,本期小编特意将评分改为了10分。

一、普通青年做法

肯定是把AB列互换、剪切然后粘贴过去哇!!

备注:小编比图片里的他帅多了!

我承认包括小编在内的很多人都是这样做的,但是为了强制安利剩下的几种方法,我问你个问题!

提问:如果表格定死了,不让你换怎么办?

回答:我重新创建个表,然后把源数据粘贴过去,然后再改!

咳咳,不要玩这么幼稚的你问我答游戏了,也不解释为啥这个不好了,直接安利其它实现方法。

二、文艺青年

文艺小青年当然不会继续使用Vlookup函数啦,在这里分享两个很实用的函数。

=index(数组,第几个)返回某个数组的第几位数据

=match(找什么,在哪个数组找,0)返回要找的信息在数组中是第几位

这两个的组合功能是不是就是和Vlookup函数是一致的?

先口述一下逻辑

第一步:先找到十元在B1至B7中处于第几位。假设返回值是X

第二步:在A1至A7中返回第X个单元格。

函数实现方式

第一步:

第二步:

合并函数:

函数真容:

=INDEX(A1:A7,MATCH(E2,B1:B7,0))

不解释啦,后面还有好多重头戏

三、不Show技巧不舒服斯基青年

方法一:Lookup函数实现

没有什么能够阻挡,我用一个函数实现的理想!(请用蓝莲花曲子哼唱)

和大家分享一个超牛的函数!Lookup函数,咋用呢?

=Lookup(找什么,在哪里找,找到的话返回什么)

用法类似于Vlookup的模糊匹配

区别就是他是三个参数,Vlookup返回的第几列变为了直接要返回的那一列(不知道晕了没有)。

直接上方法

大家看一下先用B2:B7=E2,将真假判断出来,然后用0除以真假判断结果,只有为真的是0,其它的数组对应的结果都是报错。

这样子=LOOKUP(1,{#DIV/0!;0;#DIV/0!;#DIV/0!;#DIV/0!;#DIV/0!},{1;2;3;4;5;6})

只有0对应的2会匹配出来,返回值就是2了!

方法二:Vlookup函数与数组重构

这个编写很简单,内在逻辑比较复杂,如果你可以一秒钟了解他的实现方式,那证明你已经对Excel数组函数的使用很6了!

函数拿出来:

=VLOOKUP(E2,IF({1,0},B2:B7,A2:A7),2,)

大函数不用说了,就是Vlookup的常规精确匹配,关键在于第二个参数的用法。

由于Vlookup第一个参数必须要在第二个参数中的第一列,所以需要将姓名挪在前面,序号放在后面。

IF({1,0},B2:B7,A2:A7)这个函数就实现了这个效果。

至于如何实现的呢,放个示意图,大家自行领悟

IF函数的{1,0}本身就是数组,然后就重置了数组两列的前后顺序。

感谢收看与支持!

原文发布于微信公众号 - 阿凯的Excel(akexcel)

原文发表时间:2017-03-21

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏小樱的经验随笔

UESTC 1599 wtmsb【优先队列+排序】

题目链接:UESTC 1599 wtmsb 题意:给你一组数,每一次取出两个最小的数,将这两个数的和放入这组数中,直到这组数只剩下一个,求最后剩下那个数的大小!...

2776
来自专栏数据小魔方

左手用R右手Python系列——面向对象编程基础

面向对象编程是程序设计中一种重要且高效的编程规范,它区别于常见的面向过程编程。在R语言以及Python的程序包开发过程中,大量使用了面向对象的编程范式。 百度...

52312
来自专栏

shell之sort命令

1 sort的工作原理 sort将文件的每一行作为一个单位,相互比较,比较原则是从首字符向后,依次按ASCII码值进行比较,最后将他们按升序输出。 [rocro...

2137
来自专栏java达人

哈希表

哈希表是种数据结构,它可以提供快速的插入操作和查找操作。第一次接触哈希表时,它的优点多得让人难以置信。不论哈希表中有多少数据,插入和删除(有时包括侧除)只需要接...

1897
来自专栏阮一峰的网络日志

Javascript编程风格

Douglas Crockford是Javascript权威,Json格式就是他的发明。 去年11月他有一个演讲(Youtube),谈到了好的Javascrip...

3566
来自专栏编程之旅

数据结构——无权图的路径问题(C++和java实现)

好像又是接近半个月没有更新,这半个月忙着结婚的各项事情,本来预计的学习任务也拖拖拉拉,进度缓慢。吐槽一句,拍婚纱照真的是最非常非常累的一件事情,不想再有下次了。

1172
来自专栏take time, save time

你所能用到的数据结构(九)

十二、为了count的最终胜利 在介绍完最基本的堆栈模型之后,下面要继续的是第二种最基本的模型,队列。队列,在现实生活中经常可以看到(不过考虑到在我国大部分人...

2897
来自专栏木可大大

编写优雅代码的最佳实践

Robert Martin曾说过"在代码阅读中说脏话的频率是衡量代码质量额唯一标准"。同时,代码的写法应当使别人理解它所需的时间最小化,也就是说我们写的代码是给...

1002
来自专栏企鹅号快讯

30分钟学会用Python编写简单程序

参与文末每日话题讨论,赠送异步新书 异步图书君 学习目标 知道有序的软件开发过程的步骤。 了解遵循输入、处理、输出(IPO)模式的程序,并能够以简单的方式修改它...

66710
来自专栏灯塔大数据

技术 | Python从零开始系列连载(十九)

但它的特点就是下次使用next(a)时,接着上次的断点继续运行,直到下一个yield

1153

扫码关注云+社区

领取腾讯云代金券