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

查找第一个和最后一个匹配的数据 excel函数公式技巧

在使用VLOOKUP函数查找数据时,如果多于一个匹配值,如何获取第一个匹配的值或者最后一个匹配的值。这取决于两个因素:是执行精确匹配查找还是近似匹配查找;数据是否排序。

如下图1所示的工作表。

图1

我们使用公式:

=VLOOKUP(E3,$B$3:$C$9,2,FALSE)

来查找“香蕉”的价格。将VLOOKUP函数的第4个参数的值设置为FALSE,即精确匹配,此时,无论数据是否排序,都将返回第一个找到的匹配值。

如果将数据进行排序,并执行近似匹配查找,将会获取最后一个匹配的值,如下图2所示的工作表。

图2

我们使用公式:

=VLOOKUP(E3,$B$3:$C$9,2)

来查找“脐橙”的价格。将VLOOKUP函数的第4个参数忽略或指定为TRUE,即近似匹配,此时返回最后一个找到的匹配值。因为执行近似匹配查找时,Excel将找到大于查找值的值并返回该值的前一个值。

如果要查找的数据没有排序,执行近似匹配查找,将不会得到正确的结果,如下图3所示。

图3

近似匹配查找的一个典型应用是,确定某范围内的值。例如,根据分数范围确定成绩等级,如下图4所示。

图4

在单元格F3中输入公式:

=VLOOKUP(E3,$B$3:$C$7,2,TRUE)

下拉至F5。

还可以使用INDEX/MATCH函数来查找多个匹配数据中的最后一个,如下图5所示。

图5

在单元格F3中的公式为:

=INDEX($C$3:$C$10,MATCH(E3,$B$3:$B$10,1))

注意,公式中MATCH函数的第3个参数设置为1,执行近似匹配查找。

LOOKUP函数也能用于查找最后一个匹配值。LOOKUP函数总是执行近似匹配,公式也相当简单,如下图6所示。

图6

如果数据没有排序,想要查找最后一个匹配的值,也可以使用LOOKUP函数,如下图7所示。

图7

当然,也可以使用INDEX/MATCH函数组合,但要使用数组公式:

=INDEX($C$3:$C$10,MATCH(2,1/($B$3:$B$10=E3),1))

如下图8所示。

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

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券