|
|
请马上登录,朋友们都在花潮里等着你哦:)
您需要 登录 才可以下载或查看,没有账号?立即注册
x
用 Excel 工作的朋友,一般都知道大名鼎鼎的 vlookup 函数,它是查询大王,美中不足的是它的第三个参数即列序数要数一数,数的方法是在查询区域当中从第一列数起,比如从B列数到F列是5,那就填5,若从B列到BC列,那就不好数了。
所以,处理大型数据时,高手有时候对 vlookup 函数弃而不用,用一对黄金搭档:index 和 match 。
先说一下 index 函数:
index原意是索引,众所周知,通过索引我们可以进行快速查找,因而Excel引入此函数。index 函数的必选参数就两个:index(数组, 行序号) 。数组怎么理解?当我们选择名字列的三个单元格,这三个单元格的内容就组成了一个数组,表达如下:{"张三", "李四", "Lily“}。也就是说,参数一可以选择一列的部分或全部,Excel会自动构建数组,数组内容则由各个单元格的值组成。第二个参数是行序号。比如我们要找第四行的东东,第二个参数就填写4。这里要注意,行是指Excel的自然行,而不是我们自己编写的序号行。
以下index公式将返回B列第四行的内容:=index(B:B, 4)
问题是,我们要是知道要找的东西在哪一行了,还找什么?对,第几行是不确定的,index的第二个参数会根据查找的内容动态变化,因此,我们要借助另一个函数 match 来帮忙。
match 是匹配的意思,这里不是火柴额。match函数需要三个参数:
match(查找值, 查找区域, 匹配类型)
查找值好理解,比如我们要找的是张三;查找区域,就是原始数据里有张三的那一列;匹配类型为 0 是精确查找。下面公式将返回张三所在的B列的行序号:
=match("张三",B:B,0)
是的,match 函数返回查找值所在的行序号,它正好给 index 函数提供了可能动态变化的行号,嵌套起来使用,我们就可以完美查询我们需要的东东。
例如,我们要查找张三的职务,姓名在B列,职务在H列:
=index(H:H, match("张三",B:B,0))
务必注意的是,因为职务在 H列,所以 index 的第一个参数是 H:H;而在 match 函数中,张三这个名字是记录在 B列 的,所以查找区域是B:B。
和 VLOOKUP 函数比,这对搭档仅需要列名,不需要去数目标列是在选择区域的初始列的第几列,用起来更为便捷。
|
评分
-
| 参与人数 2 | 威望 +80 |
金钱 +160 |
经验 +80 |
收起
理由
|
加林森
| + 30 |
+ 60 |
+ 30 |
赞一个! |
红影
| + 50 |
+ 100 |
+ 50 |
赞一个! |
查看全部评分
|