专栏首页阿凯的ExcelVlookup函数的大表哥介绍

Vlookup函数的大表哥介绍

谈到匹配函数,杠把子肯定是Vlookup函数,由于Vlookup前期的文章已经分享过了,今天分享Vlookup的大表哥,谁是他的大表哥呢?有人会说Hlookup,No!No!No!他俩是孪生兄弟的关系,他的大表哥是Lookup。有朋友让我写一篇Lookup的应用分享,我就老老实实写了一个。今天会从Lookup模糊匹配用法,精确匹配用法,特殊用法三个方向进行分享。

第一部分:模糊匹配用法

这个是模糊匹配的典型应用案例,即某个数字区间返回一个固定的值。重温一下如果用Vlookup函数实现

=VLOOKUP(C2,$F$2:$G$4,2,1) 找什么,在哪里找,返回第几列,最后一个值尤为重要(是1)

那如果使用Lookup函数如何实现呢?

方法一:

公式:=LOOKUP(C2,F1:G4)

这种使用方法是数组形式,Lookup第一个参数是要查找的内容。第二个参数是一个区域(这个区域是行数大于等于列数),且这个区域的第一列必须从小到大排序。这个函数的返回值就是矩形区域的最后一列。

如果第二个参数的区域列数大于行数,则和Hlookup的模糊匹配相同,在这里不做展开。

方法二:

公式:=LOOKUP(C2,F1:F4,G1:G4)

这种使用方法是向量形式,个人比较喜欢这种方法,接三个参数,第一个参数是找什么;第二个参数是以什么作为对比,这个必须是升序进行排列;第三个是返回什么。

小编观点:其实Lookup函数在模糊匹配上数组用法和Vlookup的模糊匹配没有什么差异,第二个向量用法会比Vlookup灵活一些,实战用处只大了那么一点点点。

第二部分:精确匹配

案例要求使用名字查找对应的评分。案例实现:

公式:=LOOKUP(1,0/(B2:B7=E2),C2:C7)

这个方法是比较巧妙的,所以需要各位朋友睁大双眼观看哈!大家我们输入第一个参数找什么呢?输入的是1,在哪里找呢,是用0除以姓名那一列等于中岛美嘉,第三个参数是填写返回什么值,我们把评分的那一列选中。以上就是函数的基本编写原则。

接下来和大家分享函数的拆分原则和思路。我们从内向外拆分,先拆分B2:B7=E2,这个是姓名那一列等于中岛美嘉,有前面vlookup排错,大家也知道两个单元格相等判断,返回的是真假,这样子除了第三行数据外,其它的返回值都是false,只有中岛美嘉返回的是true。在Excel中,True等同于1,False等同于0.

用0除以True和False的数组,则0除以1的时候还是返回0,但是正常分母是不可以为0的,所以其他值返回的都是错误。

回归Lookup大函数,找什么呢,找1,在哪里找呢,发现第二个参数是个数组,除了数组中的第三位是0,其它都是报错的。之前分享过,lookup在这里就是模糊匹配用法,所以电脑只能认为第三行数据是电脑找到的,则返回了评分数组中的第三位,也就是5。

小编观点:个人感觉精确匹配使用Lookup其实有点局限性,单纯的精确查找用Vlookup即可,如果是遇到精确匹配的反查,其实用Match和Index效率更高。当然Lookup我最喜欢的应用就是实现左右相互包含时候,与Find函数的组合应用。详见我其他文章。

第三部分:特殊用法

Lookup当然也有自己比较独特的应用,在这里分享一个案例。如何返回最后一个文本或数值。

比如有些表格是有汇总求值的,我们想获得这个表的最后一行数据,怎么用Lookup函数实现呢?

公式:=LOOKUP("座座座",A:A,C:C)

这个是模糊匹配用法的变种,根据模糊匹配原则,第一个参数是查找什么,第二个参数是以什么作为对比,第三个参数是返回什么。

然后我讲第一个参数设置为一个足够大的文本,文本如何比对大小呢?是根据汉字转化为拼音进行对比,如座(zuo)的Z比汇(hui)的H大,所以座在汉字中是相对比较大的文字。

因为第一个参数“座座座”都比A列中的大,所以电脑只能返回最后一列数据对应C列的值了。

小编观点:这种用法虽然不是十分常见,但是比较巧妙,是拓展函数编写思路的一个很好的应用!

本文分享自微信公众号 - 阿凯的Excel(akexcel),作者:阿忠凯

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2017-04-06

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

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Excel的匹配函数全应用

    今天会和大家分享日常使用频率最高匹配函数用法,谈到匹配函数,首先想到的就是Vlookup,嗯,今天就是要分享Vlookup和他的小伙伴们的应用。 ? ...

    用户1332619
  • Pandas读书笔记0(Anaconda与jupyter安装)

    今天和大家分享一个编辑Python的神器!--Jupyter! 之前使用的是Python自带的IDLE,作为自带的系统,是和IE浏览器一样的存在! 用一张老图...

    用户1332619
  • Pandas实现分列功能(Pandas读书笔记1)

    最近发现自己特愿意扯和分享内容本身无关的事情,下述内容纯闲扯: pandas应该怎么分享困扰了我好久,但是看我公众号的朋友更困惑的是这个人为啥要分享panda...

    用户1332619
  • python的calcsize的妙用

      python的struct包让二进制文件的处理变的非常简单,通过unpack可以方便的进行把文件的内容读读取到变量里。

    py3study
  • CPU上跑到 100 fps 的高精度PyTorch人脸特征点检测库

    向大家推荐一款基于PyTorch实现的快速高精度人脸特征点检测库,其在CPU上的运行速度可达100 fps。

    CV君
  • mongodb命令(持续更新)

    1、分组求和 db.collection.aggregate([{$group : {_id : null, sum : {$sum : "$property"...

    用户2409797
  • Centos 下部署并优化Tomcat

    类比Windows上的tomcat 启动,通过bin目录下startup.sh脚本来启动tomcat

    缘、妙不可言
  • 区块链开发之Go语言—IO操作

    本篇文章是对区块链开发中的Go语言中常用的io操作的库做一个梳理 io,最基本的io Reader type Reader interface { Re...

    linxinzhe
  • JavaScript学习笔记013-正则表达式

    Mr. 柳上原
  • vim使用手册--配对括号的查找 转

    (adsbygoogle = window.adsbygoogle || []).push({});

    双面人

扫码关注云+社区

领取腾讯云代金券