分享

lookup函数【5】大【应用实例】

 EXCEL应用之家 2020-12-17

查找函数我们之前介绍了vlookup函数,它是Excel最重要的函数之一。今天我们在介绍一个最重要之一:lookup函数。甚至在某些方面,lookup函数功能还要强过vlookup函数。甚至我们可以说,lookkup函数是Excel函数皇冠上面的钻石!下面,让我们一起通过几个例子来感受一下它的超强能力吧!

lookup函数的语法结构:

向量形式:

LOOKUP(lookup_value,lookup_vector,[result_vector])

Lookup_value:在lookup_vector中要搜索的值

Lookup_vector:只有一行或一列搜索范围

Result_value:对应于lookup_up的,返回值的区域

数组形式:

Lookup(lookup_value,array)

Lookup_value: 用数值或单元格号指定索要查找的值

Array: 指定的检索范围

例一:分列

我们一些介绍过用substitute函数来分列,大家还记得吗?在实际应用中,lookup函数更为简单方便。

上图中,C3单元格是以substitute函数实现的分列。C4单元格中用的是lookup函数:“=-LOOKUP(1,-LEFT(A3,COLUMN(A:X)))”

  • 用left函数,分别提取出“1,16,168...”,并形成一个新的数组

  • 加负号是数字类型的数据变成负数

  • 使用lookup函数在数组中查找“1”

  • 查找不到“1”,因此返回数组中最后一个数字型数据“-168318”

  • 最后负负得正

例二:提取最右侧的文本

一般而言,一行中最右侧的数据往往都是最新的数据。很多时候都需要提取最新的数据,如下列:

单元格E8中输入“=LOOKUP(1,0/($A$8:$C$8<>""),$A$8:$C$8)”即可。

  • 首先判断是否为空,产生一个新的数组后,在用“0”去除这个数组,又得到一个新的数组

  • 使用lookup函数查找“1”,返回最后一个数据

例三:提取最右侧的数值

此例中,我们在E12单元格中输入“=ROUND(LOOKUP(9E+307,A12:C12),2)”就可以提取最右侧的数值了。这里,9E+307是Excel世界中的最大值。当函数查找不到查找值时,就返回区域中最右侧的数据。

例四:逆向查找

前面几篇中我们介绍的逆向查找的方法有if函数、match+offset函数。今天介绍的lookup函数也可以实现此功能。

我们在单元格F16中输入“=LOOKUP(1,0/($B$17:$B$19=E16),$A$17:$A$19)”即可。这个和前面提取最右侧文本的那个用法类似。它们有一个通用的公式:

LOOKUP(1,0/(条件),目标区域或数组)

今后所有类似的问题都可以用上面这个公式来完成。

例五:多区间条件判断

我们在单元格G25中输入“=LOOKUP(B25,{0,59,79,95;"不及格","良","优良","优秀"})”,并下拉即可。

今天就到这里,休息一下吧!

-END-

请点击文章末尾的阅读原文领取红包吧!祝大家都有好运气!

欢迎关注【Excel应用之家】专栏,了解更多的Excel实际应用技能,尽在Excel应用之家!

版权声明:本文归Excel应用之家专栏(微信公众号Excel应用之家)原创撰写,未经允许不得转载。欢迎关注专栏/公众号。

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多