LOOKUP函数工作原理深入解析和20个经典应用场景.docxVIP

LOOKUP函数工作原理深入解析和20个经典应用场景.docx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第 第 PAGE 1 页 共 NUMPAGES 23 页 LOOKUP函数工作原理深入解析和20个经典应用场景 一、理解Lookup函数的工作原理:二分法 我们都看过lookup函数的应用的例子,它的强大功能令很我们眼花缭乱,但绝大部分用户只停留在套用阶段,至于运算原理却没几个人能说明白。想了解lookup的查找原理和更深入的使用它,你必须了解今天要学习的二分法原理。 从一个例子说起: 【例】下图中左表和右表只有第5行的会员名子不同,但在第11行查找B对应的消费金额时结果却不同。甚至左表中查找到的是会员A的消费金额。 公式: B11 =LOOKUP(A11,A2:B8) E11 =LOOKUP(D11,D2:E8) 其实,lookup函数很清醒,一点都不傻,只是我们对它了解的太少了! lookup函数查找是遵循二分法查找原理,所以要看懂上例中的查找结果,必须要了解什么是二分法查找。(二分法是excel中最难理解的函数知识点,建议同学们洗把脸清醒一下再向下看) 一、什么是二分法。 从前向后一个一个的查找,是遍历法。二分法不是这样,它是从二分位处查找,如果查找不到再从下一个二分位处查找,直到查找到和他大小相同或比它小的数。 二、基本原理。 想了解二分法,必须了解下面2个原理。 1、二分位的判定 说白了,二分位就是中间的位置,如果有7个数(lookup函数的第2个参数的总行数),那么第4个数就是中间的位置。 =LOOKUP(A11,A2:B8) 如果有10个数呢,则第5个位置是二分位。这里有一个公式可以计算出来。 =INT((总行数+1)/2) 2、查找方向确定 当在二分位查找不到时,接下来该怎么查找呢? 当上一次二分位值大于查找的值时,向上继续查找,在二分位上面区域找出新的二分位,直到找出符合条件的值。如下图中,先从第5行查,因为CB,所以就向上继续查,上面区域D2:D4区域的二分位值是D3,而D3的值是B,则对应的E列值800是是查找结果。 当数值小于查找的值时,向下继续按二分法查。如下图中,先查找第5行,发现A,所以向下继续查,在第2个二分位处发现还是小于B的A,就继续向查,因为A8的DB,所以A7的A最终符合条件(查找到和目标值相等,或比目标值小的值) 当二分值等于查找的值时,向下逐个查,最后相邻且相等的值即符合条件。 如下图所示,在A5(第1个二分位)查找到了A,本来查找结果应该是B5的860,但由于A6的值也是A,所以查找结果变成了第6行的值。而A8虽然也是A,但和A5不是连续相等区域。所以结果不是B8。 三、lookup示例解析 1、区间查找。 【例1】如下图所示,是典型的区间查找公式。查找350对应的提成比率是7%。 查找过徎: 从第1个二分位处(A4)处开始查找,200350,向下查找。 在第2个二分位处(A6)的值400350,所以要向上查,上面只有A5一个值300,且该值小于350,所以B5的值即为最终查找结果。 2、查找最后一个。 【例2】如下图所示,查找顾客A最后一次的消费金额。 分析: 这里肯定不能直接用Lookup查找B,否则按二分位查找,结果不一定是最后一个。所以就用0除的方法把符合条件的变成0,不符合条变成错误值: =0/(A2:A8=A11) 结果是 {0;0;#DIV/0!;#DIV/0!;0;#DIV/0!;#DIV/0!} 由于lookup会过滤掉错误值,所以在lookup眼中,上面的数组是这样的: {0;0;0} 然后用1查找最后一个0的位置 =Lookup(1,0/(A2:A8=A11),B2:B8) 这里1是任一个大于0的值,因为大于0,所以用二分法查找时,会一直向下查找,直到最后一个0值。 ookup的二分法查找,是跳跃式的查找。它总认为被查找的1组值是从小到大排列,如果遇到小的就向下找更大的,如果遇到大的就向上找更小的。 二、Lookup函数原理和用法全解 LOOKUP函数非常强大,有引用函数之王的称号。要想完全掌握它,必须了解它的5种常见用法和它的二分法查找原理。由于相关知识点比较多,所以教程将分成上下两篇。今天我们首先通过五个例子来了解这个函数的5种常见用法。明天我们再来说二分法查找原理和之前文章中遗留的两个LOOKUP问题。 一、常规引用 格式:LOOKUP(查找值,查找区域) 例1:根据姓名查找语文成绩,公式为=LOOKUP(H2,C2:D19) 例2:根据姓名查找英语成绩,公式为:=LOOKUP(H2,C2:F19) 通过这两个例子我们可以发现,LOOKUP在进行查找时公式的结构非常简单,查找值和要找的结果分别位于查找区域的首列和末列。 但是仅仅了解这个用法是远远不够的,如果我们再试一个数据的话,有可

文档评论(0)

学习成就卓越 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档