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

哪位excel高手发现的这个Vlookup用法,太意外了!

关于Vlookup的用法,兰色写的教程够多的了,同学们估计也快看腻了。正当兰色觉得Vlookup不可能再有什么新用法时,这两天遇到的一个Excel问题,让我对它有了新的认识。

【问题】下图左表为员工1~6月份销售明细表,在右表J列中要求根据I列姓名,判断它的销售是否达标。判断规则:

1~6月销量均大于10为达标,有任一月份小于10则为不达标。

分析:

首先要根据姓名从左表中查找对应1~6月的销售,查找某个月可以,同时查找6个月难道要用6个Vlookup?

=IF(AND(VLOOKUP(I2,A:G,2,0)>10,VLOOKUP(I2,A:G,3,0)>10,VLOOKUP(I2,A:G,4,0)>10,VLOOKUP(I2,A:G,5,0)>10,VLOOKUP(I2,A:G,6,0)>10),"达标","未达标")

当然不用!可以用条件计数的方式完成判断

=IF(SUMPRODUCT((A2:A12=I2)*(B2:G12>10))=6,"达标","不达标")

注:Sumproudct可以对满足条件的多列进行求和、计数。

这个问题好像应该圆满解决了?

No! 如果此问题修改一下,就很难用Sumprdouct完成了。

1~6月销量均>10算达标。1月、4月除外(销售淡季不统计)

那公式改成

=IF(SUMPRODUCT((A2:A12=I2)*(B2:G12>10))=4,"达标","不达标")

不行,如果1或4月有一个月大于10,其他有3个月大于10也属达标,不属合要求。

看来还是需要逐月提取出数字进行对比。

到这儿,兰色突然想到原来分享过的用Vlookup隔列求和的示例。

【例】要求对2,3,5,6,8,9 数字进行求和

{=SUM(VLOOKUP(A2,A2:K2,,0))}

注:把要求和的列数放在大括号内,用逗号分隔。

上面这个示例只是求和,如果配合AND或OR进行判断,不就解决今天的问题了吗?一试果然成功。

=IF(AND(VLOOKUP(I3,A:G,,)>10),"达标","不达标")

由此,也引申出Vlookup的新用法,即

Vlookup的第三个参数使用常量数组形式从源表中提取出多个值,然后结合IF+AND/OR进行批量条件判断。

兰色说:Vlookup竟然也有新用法了,是不是很意外。Execl的魅力也在于此。当你觉得已完全掌握了Excel某个功能时,其实是你刚入门,了解越多就会发现不会的越多。

下周六直播课中,在讲函数时也会穿插讲解这个图表的做法。想听课的同学可以提前预约一下,开课时会有超强震动提醒。

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

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券