Lookup函数最经典的公式,99%人却不懂1和0的用法

作者:admin   时间:2020-11-27   访问量:194

  Lookup函数是最牛的Excel查找函数,特别是lookup(1,0/)模式横扫无数查找难题,比如反向查找、多条件查找、查找最后一个等。但,绝大多数用户只会套用,却不懂其中的原理。

  大树搜遍百度,也没有找到一个能讲明白的教程,所以大树必须要写一个详细的教程了。

  首先,先看一下lookup函数的基本介绍:

  LOOKUP(lookup_value,lookup_vector,result_vector)

  lookup_value意思为我们要在数据表中查找的“值”。

  lookup_vector意思为我们要查找的值得“数据表”。

  result_vector意思为我们通过数据表想要得到的"值“。

  LOOKUP的查询方式为二分法查询,具体的查询原理看下图:

  然后,我们再看一下lookup函数的一个查找特性:

  给一个足够大的数(比范围内所有数都大),必定返回最后一个值。(原理是二分法查找,这里不再细讲)

  无论你添加什么类型数值,只要小于给定的值,都会返回最后一个

  如果有错误值,直接忽略

  这个忽略错误值的特征非常重要,因为当根据条件查找时,只需要把不符合条件的全变成错误值,就可以用lookup查找后最后符合条件的。

  不符合条件的怎么变成错误值?任意数字除0就会变成错误值 #Div/0!,下面举一个例子。

  【例】如下图所示,要求根据姓名查找对应的工资

  E2公式:

  =LOOKUP(1,0/(A2:A8=D2),B2:B8)

  A2:A8=D2 是用A列的姓名和D2的姓名进行逐一对比,结果只有两个:相同返回True,不同返回False。按F9键可以查看。

  在四则运算时,True相当于数字1,False相当于数字0,所以不符合条件的值变成了错误值,符合条件变成了0。

  根据lookup忽略错误值、用足够大的数查找最后一个数字的原理,就可以准时查找到符合符件的值。

  =LOOKUP(1,{#DIV/0!;#DIV/0!;#DIV/0!;#DIV/0!;0;#DIV/0!;#DIV/0!},B2:B8)

  公式中为什么用1和0,其他数字可以吗?当然可以,只要第一个数字大于第二个数字。

  如:

  =LOOKUP(9999999,9999998/(A2:A8=D2),B2:B8)

  用1和0只是看着简便而已,现在明白了吧。

  所以利用这个原理,多列判断也可以实现,只是添加对比条件而已。

  =LOOKUP(5,3/((A2:A7=E2)*(B2:B7=F2)),C2:C7)

  大树说:每次分享lookup函数公式,总会有人提问1,0的含义。现在你明白了吗?你身边肯定有99%的同事不理解,就帮大树把本文分享出去吧。


【地址】:http://www.inseo.cn/seo/130.html转载请注明出处


相关文章

Copyright © 2018-2030 大树SEO All Rights Reserved.