谷动谷力

 找回密码
 立即注册
查看: 1027|回复: 0
收起左侧

【EXCEL公式】比Vlookup更好用的CP函数Index和match用法讲解

[复制链接]
发表于 2023-6-4 11:08:02 | 显示全部楼层 |阅读模式
【EXCEL公式】比Vlookup更好用的CP函数Index和match用法讲解


vlookup是工作中excel中最常用的查找函数。但遇到反向、双向等复杂的表格查找就头痛了。

在Excel中还有一对CP函数:Index和match,功能的互补性注定谁也离不开谁。看两个小例子就明白了。

1、根据位置查找值

【例1】查找返回A列第5行的值

640?wx_fmt=jpeg&wxfrom=5&wx_lazy=1&wx_co=1.jpg
公式
=INDEX(A:A,5)

注:INDEX函数可以根据指定的位置提取值。

2、根据值查找位置  

【例2】在A列查找王大辰的所在行数
640?wx_fmt=jpeg&wxfrom=5&wx_lazy=1&wx_co=1.jpg
公式:
=MATCH(D2,A:A,0)

注:MATCH函数在查找时和VLOOKUP用法类似,区别是MATCH是返回位置,VLOOKUP是返回值。

如果index+match组合使用,Vlookup函数只能靠边站了!

3、反向查找

【例3】如下图所示,要求根据产品名称,查找编号。
640?wx_fmt=jpeg&wxfrom=5&wx_lazy=1&wx_co=1.jpg
分析:
先利用Match函数根据产品名称在C列查找位置
=MATCH(B13,C5:C10,0)
再用Index函数根据查找到的位置从B列取值。完整的公式即为:
=INDEX(B5:B10,MATCH(B13,C5:C10,0))

4、双向查找

【例4】如下图所示,要求根据月份和费用项目,查找金额
640?wx_fmt=jpeg&wxfrom=5&wx_lazy=1&wx_co=1.jpg
分析:
先用MATCH函数查找3月在第一行中的位置
=MATCH(B10,$A$2A$6,0)
再用MATCH函数查找费用项目在A列的位置
= MATCH(A10,$B$1G$1,0)
最后用INDEX根据行数和列数提取数值
INDEX(区域,行数,列数)
=INDEX(B2:G6,MATCH(B10,$A$2A$6,0),MATCH(A10,$B$1G$1,0))
5、多条件查找

【例5】如下图所示,要求根据入库时间和产品名称,查找入库单价。
640?wx_fmt=jpeg&wxfrom=5&wx_lazy=1&wx_co=1.jpg
分析:
由于match的第二个参数可以支持合并后的数组所以可以直接进行合并查找:
=MATCH(C32&C33,B25:B30&C25:C30,0)
查找到后再用INDEX取值
=INDEX(D2530,MATCH(C32&C33,B25:B30&C25:C30,0))
由于公式中含有数组运算(一组数同另一组数同时运算),所以公式需要按ctrl+shift+enter三键完成输入

兰色说:通过三个示例可以看出,Index+match在查找值时要灵活的的多,特别是逆向查看,以后不用再犹豫,直接用INDEX+MATCH组合。

+10
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|深圳市光明谷科技有限公司|光明谷商城|Sunshine Silicon Corpporation ( 粤ICP备14060730号|Sitemap

GMT+8, 2024-7-19 05:27 , Processed in 0.082943 second(s), 39 queries .

Powered by Discuz! X3.2 Licensed

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表