分享

淘宝收费200元的Excel高级查找问题,居然被我5分钟搞定!

 Excel不加班 2019-12-26

来,跟着卢子一起看这个淘宝收费200元的问题。

B表,型号出现多次,有记录每个型号对应的内部资产卡片号、序列号和保管地点。

A表,型号出现的次数比B表更多次,现在要根据型号按顺序查找对应的内部资产卡片号、序列号和保管地点。

在L1单元格输入公式,按Ctrl+Shift+Enter三键结束,下拉和右拉公式。

=IFERROR(INDEX(B!F:F,SMALL(IF(B!$B$2:$B$12=A!$I1,ROW($2:$12)),COUNTIF(A!$I$1:$I1,A!$I1))),"")

这条复杂公式刚好就是卢子招答疑老师的其中一道题目,答疑老师要在10分钟以内写出来,至于卢子5分钟之内就可以搞定。

当然,今天卢子是不会介绍这条复杂公式,采用辅助列的方法来解决这个问题。

化繁为简才是卢子最擅长的。

Step 01 型号原来是不唯一的,没法直接用VLOOKUP函数查找。需要在B表增加一个辅助列,用型号连接出现的次数,这样就变成了唯一值。

=C2&COUNTIF(C$2:C2,C2)

Step 02 同样道理,A表也可以用辅助列获取不重复型号。

=$I1&COUNTIF($I$1:$I1,$I1)

当然这个作为VLOOKUP函数的参数,不用辅助列也可以,完全不影响。

=VLOOKUP($I1&COUNTIF($I$1:$I1,$I1),B!$A:$I,COLUMN(G1),0)

Step 03 VLOOKUP函数查找不到对应值会显示错误值,不美观,加一个容错函数IFERROR,让错误值显示空白。

=IFERROR(VLOOKUP($I1&COUNTIF($I$1:$I1,$I1),B!$A:$I,COLUMN(G1),0),"")

到此问题就解决了,省去200元。

一起牛逼,才能成为更好的朋友!

作者:卢子,清华畅销书作者,《Excel效率手册 早做完,不加班》系列丛书创始人,个人公众号:Excel不加班(ID:Excelbujiaban)

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多