Skip to main content

如何在Excel中使用VLOOKUP查找数据

【Excel实用技术】excel中使用VLOOKUP也能从右向左查找数据,超简单 (六月 2025)

【Excel实用技术】excel中使用VLOOKUP也能从右向左查找数据,超简单 (六月 2025)
Anonim

Excel的VLOOKUP函数(表示“垂直查找”)将在范围的第一列中查找值,并在同一行的任何其他列中返回该值。

如果找不到包含特定数据的单元格,VLOOKUP是查找该数据的一种非常有效的方法。它在很难找到信息的巨型电子表格中特别有用。

本文中的说明适用于Excel 2016,2013,2010; Excel for Mac和Excel for 365 / Online。

VLOOKUP功能如何工作

VLOOKUP通常返回单个数据字段作为其输出。

这是如何工作的:

  1. 你提供一个名字或 Lookup_Array中 告诉VLOOKUP数据表的哪一行要查找所需的数据。
  2. 您提供列号作为 Col_index_num为 参数,告诉VLOOKUP哪个列包含您寻找的数据。
  3. 该函数寻找 Lookup_Array中 在数据表的第一列中。
  4. 然后VLOOKUP找到并返回您定义的列号中的信息 Col_index_num为,与查找值相同的行。

VLOOKUP函数参数和语法

VLOOKUP函数的语法是:

= VLOOKUP(Lookup_Array中,则table_array,Col_index_num为,range_lookup)

VLOOKUP函数可能看起来令人困惑,因为它包含四个参数,但它很容易使用。

VLOOKUP函数的四个参数如下:

lookup_value(必填):要在表数组的第一列中搜索的值。

table_array(必填) - 这是VLOOKUP搜索以查找所需信息的数据表(一系列单元格)。

  • table_array必须至少包含两列数据
  • 第一列必须包含lookup_value

col_index_num(必填) - 这是您要查找的值的列号。

  • 编号从第1列开始
  • 如果引用的数字大于表数组中的列数,则该函数将返回#REF!错误

range_lookup(可选) - 指示lookup-value是否落在表数组中包含的范围内。 range_lookup参数为“TRUE”或“FALSE”。使用TRUE进行近似匹配,使用FALSE进行精确匹配。如果省略,则默认值为TRUE。

如果range_lookup参数为TRUE,则:

  • lookup_value是您要检查它是否属于table_array定义的范围内的值。
  • table_array包含所有范围和包含范围值的列(例如高,中或低)。
  • col_index_num参数是结果范围值。

Range_Lookup参数如何工作

使用可选 range_lookup 对于很多人来说理论很复杂,所以值得一看快速的例子。

上图中的示例使用VLOOKUP功能根据购买的商品数量查找折扣率。

这个例子表明购买19件商品的折扣是2%,因为19件商品的折扣在11到21之间 数量 查找表的列。

因此,VLOOKUP返回查找表的第二列中的值,因为该行包含该范围的最小值。设置范围查找表的另一种方法是为最大值创建第二列,此范围最小值为11,最大值为20.但结果的工作方式相同。

在该示例中,包含VLOOKUP函数的以下公式用于查找所购商品数量的折扣。

= VLOOKUP(C2,$ C $ 5:$ d $ 8,2,TRUE)

  • C2:这是查找值,可以在电子表格的任何单元格中。
  • $ C $ 5:$ d $ 8:这是一个包含您要使用的所有范围的固定表。
  • 2:这是您希望LOOKUP函数返回的范围查找表中的列。
  • 真正:启用 range_lookup 这个功能的特点。

一旦你按下了 输入,并且结果在第一个单元格中返回,您可以自动填充整个列以查找查阅列中其余单元格的范围结果。

range_lookup参数是将一列混合数字整理成各种类别的有说服力的方法。

VLOOKUP错误:#N / A和#REF

VLOOKUP函数可能会返回以下错误。

#N / A 是“值不可用”错误,并在以下条件下发生:

  • lookup _value 在table_array参数的第一列中找不到
  • 表格数组 论证是不准确的。例如,参数可能包括范围左侧的空列
  • Range_lookup 参数设置为FALSE,并且在第一列中找不到lookup_value参数的完全匹配 表格数组
  • range_lookup 参数设置为TRUE,table_array第一列中的所有值都大于lookup_value

#REF! (如果col_index_num大于table_array中的列数,则会出现“引用超出范围”)错误。