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

多维度批量查找,2000条数据,2秒搞定

如果单个维度的查找数据,其实很简单,用vlookup就可以了,但是往往我们需要多维度的查找,那怎么办呢?用什么方法呢?如果筛选,那就太浪费时间了。而且要查找的数据比较多的话,那会看瞎眼的。下面我们说一下一个神奇的公式。

首先看公式,我们先解释一下这个公式的用法。

LOOKUP(lookup_value,lookup_vector,result_vector)

■ Lookup_value 为函数 LOOKUP 在第一个向量中所要查找的数值。

lookup_value 可以为数字、文本、逻辑值或包含数值的名称或引用。

■ Lookup_vector 为只包含一行或一列的区域。lookup_vector 的数值可以为文本、数字或逻辑值。

■ Result_vector 只包含一行或一列的区域,其大小必须与 lookup_vector 相同

以上是官方比较普通的解释,而且直接按照这个说法使用的话,会出现查找不精确的现象。我说一下我们的高阶用法。

lookup_value:这个是要查找的值。一般是1,下面会说到为什么是1.

lookup_vector:这个是要查找的范围,也就是lookup_value是在哪个范围里面查找的。高阶用法是要我们自己创造新的向量,在这些向量里面,只有一个值是1,也就是我们要找的结果,其他值都是0.

result_vector:要返回的结果,也就是前面两个元素找到之后所对应的值。

看下面的例子:

如果我们想找以下内容所对应的PCS,怎么使用这个公式呢?如果筛选,这里是不是要筛选三次?如果再多几个维度,是不是要再筛选多几次呢?但是这个公式就很方便了。

这里是数据只有2个PO,2行,3列,如果数据多到1000行,也是一样的道理哈。2行,3列就是一个向量了。看公式:

=LOOKUP(1,0/((Z12=A:A)*(AA12=B:B)*(AB12=C:C)),S:S)

第一项lookup_value是1。

第二项lookup_vector,这个是我们自己创造的向量、0/((Z12=A:A)*(AA12=B:B)*(AB12=C:C),Z12是我们要查找的PO4500123022所在的位置,A:A是PO4500123022所在的范围,也就是A列。AA12是CNT NO. 1所在的位置,B:B是它所在的范围,也就是B列。AB12同理。其他的符号括号照抄就行了。这样我们就创造了一个2行3列的向量。

第三项result_vector:要返回的结果,也就是S列对应的值了,S列是PCS所在的列。最后的结果如下:

看到没有,PCS已经找出来了,如果要查找多项,往下填充数据就行了,秒定。最后根据需要做成模板,平时用起来就方便很多啦。

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

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券