秒杀vlookup函数,Index+Match函数组合

原创 kaixinit  2019-06-03 23:06  阅读 4,467 次

lookup是工作中excel中最常用的查找函数。但遇到反向、双向等复杂的表格查找,还是要请出今天的主角:index+Match函数组合。

1、反向查找

【例1】如下图所示,要求根据产品名称,查找编号。

秒杀vlookup函数,Index+Match函数组合来了!

分析:

先利用Match函数根据产品名称在C列查找位置

=MATCH(B13,C5:C10,0)

再用Index函数根据查找到的位置从B列取值。完整的公式即为:

=INDEX(B5:B10,MATCH(B13,C5:C10,0))

2、双向查找

【例2】如下图所示,要求根据月份和费用项目,查找金额

秒杀vlookup函数,Index+Match函数组合来了!

分析:

先用MATCH函数查找3月在第一行中的位置

=MATCH(B10,$A$2:$A$6,0)

再用MATCH函数查找费用项目在A列的位置

= MATCH(A10,$B$1:$G$1,0)

最后用INDEX根据行数和列数提取数值

INDEX(区域,行数,列数)

=INDEX(B2:G6,MATCH(B10,$A$2:$A$6,0),MATCH(A10,$B$1:$G$1,0))

3、多条件查找

【例3】如下图所示,要求根据入库时间和产品名称,查找入库单价。

秒杀vlookup函数,Index+Match函数组合来了!

分析:

由于match的第二个参数可以支持合并后的数组所以可以直接进行合并查找:

=MATCH(C32&C33,B25:B30&C25:C30,0)

查找到后再用INDEX取值

=INDEX(D25:D30,MATCH(C32&C33,B25:B30&C25:C30,0))

由于公式中含有数组运算(一组数同另一组数同时运算),所以公式需要按ctrl+shift+enter三键完成输入

4、提取不重复值

【例4】从下表A列提取不重复的值(唯一值),结果放在C列

分析:

由于match查找到的永远是第一个符合条件的值,利用这个特点判断是否为第2次及以后出现的。

公式:C1 数组公式(三键输入)

{=INDEX(A:A,SMALL(IF(MATCH(A$1:A$8,A:A,)=ROW($1:$8),ROW($1:$8),99),ROW(A1)))&""}

注:引用空单元格返回值0,&""是为了把0转换为空值

本文地址:http://www.kaixinit.com/info/office/684.html
关注我们:请关注一下我们的微信公众号:扫描二维码开心电脑网的公众号,公众号:kaixinit
版权声明:本文为精品文章,由 kaixinit 收集,不代表开心电脑网对观点赞同或支持。欢迎分享本文,转载请保留出处!

发表评论


表情