使用 VVLOOKUP、INDEX 或 MATCH 查找值

注意:  我们希望能够尽快以你的语言为你提供最新的帮助内容。 本页面是自动翻译的,可能包含语法错误或不准确之处。我们的目的是使此内容能对你有所帮助。可以在本页面底部告诉我们此信息是否对你有帮助吗? 请在此处查看本文的 英文版本 以便参考。

假设您有 office 位置编号的列表,并且您需要知道哪些员工是在每个 office。电子表格非常大,,因此您可能认为它一个任务的挑战。可以实际处理 lookup 函数很容易。

VLOOKUPHLOOKUP函数INDEXMATCH,与是一些在 Excel 中最有用的函数。

注意: 查阅向导功能不再在 Excel 中可用。

下面介绍了如何使用 VLOOKUP 的示例。

=VLOOKUP(B2,C2:E7,3,TRUE)

在此示例中,B2 是第一个参数,函数工作所需的数据的元素。Vlookup,此第一个参数是您要查找的值。此参数可以是单元格引用或固定的值,如"smith"或 21000。第二个参数是单元格区域,C2-:E7,要在其中搜索您要查找的值。第三个参数是在该单元格区域,其中包含您要查找的值的列。

第四个参数是可选的。输入 TRUE 或 FALSE。如果您输入 TRUE 时,或将参数保留为空,该函数返回近似匹配的第一个参数中指定的值。如果您输入 FALSE,该函数将匹配的值的第一个参数提供。换言之,将第四个参数保留为空,或 TRUE 输入-为您提供更大的灵活性。

此示例显示该函数的工作原理。VLOOKUP 输入单元格 B2 中的值 (第一个参数) 时,搜索范围 C2:E7 中的单元格 (第二个参数),并从第三列在区域中,E 列返回最接近的近似匹配 (第三个参数)。

VLOOKUP 函数的典型用法

第四个参数为空,,因此函数返回近似匹配。如果没有它,您必须 C 或 D 以在所有获取结果的列中输入一个值。

如果您习惯使用 VLOOKUP,HLOOKUP 函数是均匀易于使用。输入相同的参数,但是它而不是列的行中搜索。

不妨尝试一下

如果您想要尝试查找函数之前尝试使用您自己的数据,下面是一些示例数据。某些 Excel 用户喜欢使用 VLOOKUP 和 HLOOKUP;其他人更喜欢 INDEX 和 MATCH 配合使用。尝试每种方法,查看的哪些您最喜欢。

在工作期间的 VLOOKUP 示例

将以下数据复制到空白电子表格。

提示:   将数据粘贴到 Excel 中之前,请将 A 列到 C 列的列宽设置为 250 像素,并单击自动换行选项卡,对齐组)。

密度

粘度

温度

0.457

3.55

500

0.525

3.25

400

0.606

2.93

300

0.675

2.75

250

0.746

2.57

200

0.835

2.38

150

0.946

2.17

100

1.09

1.95

50

1.29

1.71

0

公式

说明

结果

=VLOOKUP(1,A2:C10,2)

使用近似匹配搜索 A 列中的值 1,在 A 列中找到小于等于 1 的最大值 0.946,然后返回同一行中 B 列的值。

2.17

=VLOOKUP(1,A2:C10,3,TRUE)

使用近似匹配搜索 A 列中的值 1,在 A 列中找到小于等于 1 的最大值 0.946,然后返回同一行中 C 列的值。

100

=VLOOKUP(0.7,A2:C10,3,FALSE)

使用精确匹配在 A 列中搜索值 0.7。因为 A 列中没有精确匹配的值,所以返回一个错误值。

#N/A

=VLOOKUP(0.1,A2:C10,2,TRUE)

使用近似匹配在 A 列中搜索值 0.1。因为 0.1 小于 A 列中最小的值,所以返回一个错误值。

#N/A

=VLOOKUP(2,A2:C10,2,TRUE)

使用近似匹配搜索 A 列中的值 2,在 A 列中找到小于等于 2 的最大值 1.29,然后返回同一行中 B 列的值。

1.71

HLOOKUP 示例

复制此表中的所有单元格,然后将其粘贴到空白 Excel 工作表的单元格 A1 中。

提示:   将数据粘贴到 Excel 中之前,请将 A 列到 C 列的列宽设置为 250 像素,并单击自动换行选项卡,对齐组)。

车轴

轴承

螺钉

4

4

9

5

7

10

6

8

11

公式

说明

结果

=HLOOKUP("车轴", A1:C4, 2, TRUE)

在首行查找车轴,并返回同列(列 A)中第 2 行的值。

4

=HLOOKUP("轴承", A1:C4, 3, FALSE)

在首行查找轴承,并返回同列(列 B)中第 3 行的值。

7

=HLOOKUP("B", A1:C4, 3, TRUE)

在首行查找 B,并返回同列中第 3 行的值。 因为找不到 B 的完全匹配项,将使用第 1 行列 A 中小于 B 的最大值 "车轴"。

5

=HLOOKUP("螺栓", A1:C4, 4)

在首行查找螺栓,并返回同列(列 C)中第 4 行的值。

11

=HLOOKUP(3, {1,2,3;"a","b","c";"d","e","f"}, 2, TRUE)

在三行数组常量中查找数字 3,并返回同列(本例中为第三列)中第 2 行的值。 数组常量中有三行数值,并且每行都用分号分隔 (;)。 因为在第 2 行和第 3 列(同一列)中找到 c,因此将返回 c。

c

INDEX 和 MATCH 示例

最后一个示例使用 INDEX 和 MATCH 函数一起,以返回的最早发票编号和每个五个城市及其对应的日期。返回日期显示为数字,因为我们使用 TEXT 函数的格式设置为日期。INDEX 函数实际上作为其参数使用 MATCH 函数的结果。INDEX 和 MATCH 函数的组合两次公式中使用每个-首先,要返回的发票数,然后返回日期。

复制此表中的所有单元格,然后将其粘贴到空白 Excel 工作表的单元格 A1 中。

提示:   将数据粘贴到 Excel 中之前,请将 A 列到 D 列的列宽设置为 250 像素,并单击自动换行选项卡,对齐组)。

发票

城市

发票日期

按城市,使用日期的最早发票

3115

广州

12/4/7

="广州 = "&INDEX($A$2:$C$33,MATCH("广州",$B$2:$B$33,0),1)& ", 发票日期:" & TEXT(INDEX($A$2:$C$33,MATCH("广州",$B$2:$B$33,0),3),"yy/m/d")

3137

广州

12/4/9

="武汉 = "&INDEX($A$2:$C$33,MATCH("武汉",$B$2:$B$33,0),1)& ", 发票日期:" & TEXT(INDEX($A$2:$C$33,MATCH("武汉",$B$2:$B$33,0),3),"yy/m/d")

3154

广州

12/4/11

="张家口 = "&INDEX($A$2:$C$33,MATCH("张家口",$B$2:$B$33,0),1)& ", 发票日期:" & TEXT(INDEX($A$2:$C$33,MATCH("张家口",$B$2:$B$33,0),3),"yy/m/d")

3191

广州

12/4/21

="三亚 = "&INDEX($A$2:$C$33,MATCH("三亚",$B$2:$B$33,0),1)& ", 发票日期:" & TEXT(INDEX($A$2:$C$33,MATCH("三亚",$B$2:$B$33,0),3),"yy/m/d")

3293

广州

12/4/25

="长春 = "&INDEX($A$2:$C$33,MATCH("长春",$B$2:$B$33,0),1)& ", 发票日期:" & TEXT(INDEX($A$2:$C$33,MATCH("长春",$B$2:$B$33,0),3),"yy/m/d")

3331

广州

12/4/27

3350

广州

12/4/28

3390

广州

12/5/1

3441

广州

12/5/2

3517

广州

12/5/8

3124

武汉

12/4/9

3155

武汉

12/4/11

3177

武汉

12/4/19

3357

武汉

12/4/28

3492

武汉

12/5/6

33 16

张家口

12/4/25

3346

张家口

12/4/28

3372

张家口

12/5/1

3414

张家口

12/5/1

3451

张家口

12/5/2

3467

张家口

12/5/2

3474

张家口

12/5/4

3490

张家口

12/5/5

3503

张家口

12/5/8

3151

三亚

12/4/9

3438

三亚

12/5/2

3471

三亚

12/5/4

3160

长春

12/4/18

3328

长春

12/4/26

3368

长春

12/4/29

3420

长春

12/5/1

3501

长春

12/5/6

了解有关查找函数的详细信息

扩展你的 Office 技能
了解培训
抢先获得新功能
加入 Office 预览体验计划

此信息是否有帮助?

谢谢您的反馈!

谢谢你的反馈! 可能需要转接到 Office 支持专员。

×