首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Excel – 用 lookup 函数按区间查找

我发现一个有趣的现象:很多小伙伴对 vlookup 函数不陌生,平时工作中经常使用,而对 lookup 函数却不太熟悉。

那我们今天就来说一说 lookup 函数的常用场景。

语法:

lookup(lookup_value,lookup_vector,result_vector)

释义:

lookup(查找值,查找向量,返回向量)

应用:

区间查找

符合最后一个条件查找

多条件查找

案例 1:区间查找

下表 A 列是每场活动的实际成本,B,C 列是每个成本区间对应的系数规则,如何根据规则,快速算出 A 列每个成本的系数?

是不是要套用很多 if 函数?Oh,no no no!其实很简单。

解决方案 1:

1. 如下图,增加辅助列 C,填入每个成本区间的起始值

2. 在结果列输入以下公式,向下拖动,就完成了:

=LOOKUP(A2,$C$2:$D$8)

* 请注意,$C$2:$D$8 要绝对引用

案例 2:符合最后一个条件查找

下表中的人名若有重复,则统计其最新的奖金数。

解决方案 2:

1. 在 D2 中输入如下公式,下拉即可:

=LOOKUP(1,0/($A$2:$A$13=$A2),$B$2:$B$13)

公式释义:

$A$2:$A$13=$A2:判断 $A$2:$A$13 中的值是否等于 $A2,分别返回 true 或 false

0/($A$2:$A$13=$A2):用 0 除以 true 或 false,结果为 0 或错误值 #DIV/0!

1,0/($A$2:$A$13=$A2):在结果为 0 或错误值 #DIV/0! 的数组中查找 1 的值,查到后返回,忽略错误值后区域内的值全是 0,所以函数一直向下查找,直至查找到最后一个 0 的值

$B$2:$B$13:按最后查到的 0 值,返回对应的 $B$2:$B$13 单元格

案例 3:多条件查找

下表中多了一个“月份”列,如何查出郭德纲 2 月的奖金数?

解决方案 3:

1. 在 结果单元格中输入以下公式即可:

=LOOKUP(1,0/(($F$2=$A$2:$A$13)*($G$2=$C$2:$C$13)),$B$2:$B$13)

公式释义:

0 和 1 的使用目的跟案例 2 类似,不难理解

*:表示 and,因为需要同时满足两个条件,所以用 * 把它们连接起来

  • 发表于:
  • 原文链接https://page.om.qq.com/page/OcAR-znckgdjbgQqbWJCVf0g0
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券