excel函数技巧:MAX在数字查找中的应用妙招

大家都知道VLOOKUP可以按给定的内容去匹配到我们所需的数据,正因为如此,它在函数界有了很大的名气。但是今天要分享的这三个示例,如果使用VLOOKUP去匹配数据的话,就有些麻烦了。就在VLOOKUP头疼不已的时候,MAX函数二话不说,只用了一个套路就把三个问题都给解决了。

可能有些小伙伴会好奇,MAX不是求最大值的函数么,它怎么能够解决VLOOKUP都搞不定的问题呢?还有这个套路又是什么呢?一起往下看看就明白了……

示例1:在业务明细表中找出每个经销商最近一次的业务日期

为了便于理解问题,数据源只保留了经销商和业务日期两列数据,现在需要得到每个经销商最近一次发生业务的日期。(提示:数据源中的业务日期是升序排列的。)

不知道使用VLOOKUP该怎么解决问题呢?MAX使出的套路是这样的:

=MAX(($A$2:$A$18=D2)*$B$2:$B$18)

录入方法请看动画演示:

注意这个公式在输入后要同时按住Ctrl和Shift键再回车,公式会自动出现大括号。

如何理解这个公式是大家最关心的问题,其实原理很简单,首先做一个比较,看看A列有哪些数据和我们需要判断的供货商一致,也就是$A$2:$A$18=$D2这部分的作用。在编辑栏选中这部分公式,按下F9键就能看到公式的计算结果。

可以看到公式的结果是一组逻辑值,当A列的内容与所要匹配的经销商一致时得到TRUE,不一致则为FALSE。

接下来就是用这一组逻辑值与B列的业务日期做乘法(Excel中的日期的本质上是数字哦),TRUE在进行运算时与数字1相同,FALSE在进行运算时与数字0相同,因此计算结果是这样的。

在得到的这组数字中,0表示没有匹配到对应的经销商时返回的值,而不为0的这些数字表示匹配到对应的经销商后返回的业务日期。其中最大的那个值就是最近的一次日期,因此MAX就能轻而易举的得到最终结果。

如果你做出来的结果不是日期而是数字的话,把单元格格式改成日期格式就没问题了。

示例2:按照工号或姓名得到对应的奖金

通常在进行数据匹配时,是用一个固定的条件进行查找。而在这个例子中,我们的条件是二者之一。

不管是工号还是姓名,都可以得到对应的奖金。

不知道VLOOKUP该如何解决这个问题呢?反正MAX还是一样的套路:

=MAX(($A$2:$B$13=E2)*$C$2:$C$13)

公式的录入方法和原理不再赘述,与示例1完全一样,再来看看示例3。

示例3:按照姓名找到对应的分组代码

每一组有四名组员,按照组员姓名找到所属分组的代码。

如果说前两个例子VLOOKUP还想挣扎着折腾一下的话,这个例子直接就能让VLOOKUP找不到北了。MAX还是沿用了老套路:

=MAX(($B$2:$E$4=A7)*$A$2:$A$4)

怎么样,MAX函数的这个套路是不是很强!

要使用这个套路需要注意以下两点:

1. 查找结果为数字;

2. 注意判断条件的区域与结果所在区域的选取一定要准确,并且要进行锁定。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

qingguo1979

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值