Excel中MATCH和INDEX函数的用法详解,以及Vlookup的数组用法

match函数

目的:查询函数,范围单元格中搜索特定的项,然后返回该项在此区域中的相对位置。

For example:让 match 去【隔壁办公室】找【老张】
Match 回复:【老张】坐在【隔壁办公室】第【四】个座位上

公式:【= match (要查找的值,查找的区域,匹配方式】

问题一:如何在【数据源】表中查询到【客户 ID 】列中单元格内容为【 CHOPS 】的位置

=MATCH(A2,数据源!A:A,0)

在这里插入图片描述

第一参数【要查找的值】:可以是文本、数值或逻辑值,本题中是【A2】 CHOPS
第二参数【查找的区域】:即要搜索的单元格区域,本题中要搜索的区域是【数据源】表中的 A 列【客户 ID 】列
第三参数【匹配类型】:本题的匹配类型为【0】精准匹配(最常用精确匹配)

index函数

目的:引用函数,根据指定的行和列找到某单元格的内容。
公式:【= index (要查找的区域,查找值的行,查找值的列】

问题二:如何根据【客户 ID 】得到【公司名称】

=INDEX(数据源!B:B,15)
在这里插入图片描述
第一参数【要查找的区域】:即要搜索的单元格区域,本题中为【数据源】表中【公司名称】所在列 B 列
第二参数【查找值的行】:即要查找的【公司名称】在【要查找的区域】中所在的行数,由上文 match 函数可知,在第【15】行。
第三参数【查找值的列】:选填。即要查找的【公司名称】在【要查找的区域】中所在的列数,由于本题【查找区域】只有 B 列一列,因此可以不填,或填【1】

因此公式为:【=INDEX(数据源!B:B,15)】

问题三:INDEX和MATCH结合使用,通过客户ID找出公司名称。

=INDEX(数据源!B:B,MATCH(A2,数据源!A:A,0))

在这里插入图片描述

补充: column 函数

目的:用来找到某个单元格在第几列,也就是寻找它的列号。

公式:【= COLUMN (单元格)】

比如,【= COLUMN (C1)】, C 是第三列,所以得到结果为【3】
【= COLUMN ()】括号内什么都不填,会引用到当前所在单元格的列号
在这里插入图片描述

在这里插入图片描述

使用 vlookup 进行多列填充

(对于多列填充可以引用Vlookup数组来做,会简单很多)

问题:如何根据【客户 ID 】查询【公司名称】【地址】【联系人姓名】【电话】【城市】
当【数据源】表头与【新表】表头一致时:
在这里插入图片描述

通俗易懂来解释一下这个数组的底层逻辑

COLUMN(B1:G1)等价于
COLUMN(B1),COLUMN(C1),COLUMN(D1),COLUMN(E1),COLUMN(F1),COLUMN(G1).

意思就是说你不想一个个Vlookup的写,
VLOOKUP( D 4 , 数据源 ! D4,数据源! D4,数据源!A: G , C O L U M N ( 数据源 ! B 1 ) , 0 ) . . . . . V L O O K U P ( G,COLUMN(数据源!B1),0) ..... VLOOKUP( G,COLUMN(数据源!B1),0).....VLOOKUP(D4,数据源! A : A: A:G,COLUMN(数据源!G1),0)

就可以直接用一个数组公式搞定

公式 =VLOOKUP( D 4 , 数据源 ! D4,数据源! D4,数据源!A:$G,COLUMN(数据源!B1:G1),0)

总结:
MATCH、INDEX和VLOOKUP函数是Excel中非常实用的函数的综合应用。MATCH函数用于查找某个值在给定范围内的位置,INDEX函数用于根据行号和列号从给定范围中返回一个值,而VLOOKUP函数用于在指定范围中查找某个值,并返回该值所在行的指定列的值,vlookup更高级用法的就是加入数组用法。

  • 23
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值