Excel - LOOKUP 函数



描述

当需要在一个单行或单列中查找值,并在第二行或第二列的相同位置找到一个值时,可以使用 LOOKUP 函数。使用 LOOKUP 函数搜索一行或一列。

使用 VLOOKUP 函数搜索一行或一列,或者搜索多行和多列(如表格)。它是 LOOKUP 函数的改进版本。

LOOKUP 函数有两种使用方法:

向量形式 - 使用此形式的 LOOKUP 在一行或一列中搜索值。当要指定包含要匹配值的范围时,使用向量形式。

数组形式 - Microsoft 强烈建议使用 VLOOKUP 或 HLOOKUP 代替数组形式。为了与其他电子表格程序兼容,提供了数组形式,但其功能有限。

数组是在行和列中的一组值(如表格),您想要搜索这些值。

要使用数组形式,您的数据必须已排序。

向量形式

LOOKUP 函数的向量形式在一个单行或单列范围内(称为向量)查找值,并从第二个单行或单列范围的相同位置返回一个值。

语法

LOOKUP (lookup_value, lookup_vector, [result_vector]) 

参数

参数 描述 必填/可选
lookup_value

LOOKUP 函数在 lookup_vector 中搜索的值。lookup_value 可以是数字、文本、逻辑值或引用值的名称或引用。

必填
lookup_vector

仅包含一行或一列的范围。lookup_vector 中的值可以是文本、数字或逻辑值。

lookup_vector 中的值必须按升序排列:…,-2,-1,0,1,2… A-Z,FALSE,TRUE。否则,LOOKUP 函数可能无法返回正确的值。大写和小写文本等效。

必填
result_vector

仅包含一行或一列的范围。result_vector 参数的大小必须与 lookup_vector 相同。

可选

备注

  • 如果 LOOKUP 函数找不到 lookup_value,则该函数会匹配 lookup_vector 中小于或等于 lookup_value 的最大值。

  • 如果 lookup_value 小于 lookup_vector 中的最小值,LOOKUP 函数将返回 #N/A 错误值。

  • 如果 lookup_vector 不是升序排列,LOOKUP 函数将返回 #N/A 错误值。

  • 如果 LOOKUP 函数试图引用不存在的单元格,则返回 #REF! 错误值,例如:

    • 输入 LOOKUP 函数后删除的单元格。

    • LOOKUP 函数中的相对引用,在将函数复制到其他单元格时变得无效。

  • 如果正在比较的单元格的内容具有不同的数据类型,LOOKUP 函数可能无法返回正确的值。

  • 如果 lookup_value 或 lookup_vector 单元格的开头或结尾处有不可见的空格,LOOKUP 函数可能无法返回正确的值。

数组形式

可以考虑使用 VLOOKUP 或 HLOOKUP 代替数组形式。为了与其他电子表格程序兼容,提供了 LOOKUP 函数的数组形式,但其功能有限。LOOKUP 函数的数组形式在数组的第一行或第一列中查找指定的值,并从数组的最后一行或最后一列的相同位置返回一个值。

当要匹配的值位于数组的第一行或第一列时,使用此形式的 LOOKUP 函数。

语法

LOOKUP (lookup_value, array) 

参数

参数 描述 必填/可选
lookup_value

LOOKUP 函数在数组中搜索的值。

lookup_value 可以是数字、文本、逻辑值或引用值的名称或引用。

必填
array

包含要与 lookup_value 比较的文本、数字或逻辑值的单元格范围。

数组中的值必须按升序排列:…,-2,-1,0,1,2… A-Z,FALSE,TRUE。

否则,LOOKUP 函数可能无法返回正确的值。

大写和小写文本等效。

必填

备注

  • 如果 LOOKUP 函数找不到 lookup_value,则该函数会匹配数组中小于或等于 lookup_value 的最大值。

  • 如果 lookup_value 小于第一行或第一列(取决于数组的维度)中的最小值,LOOKUP 函数将返回 #N/A 错误值。

  • 如果 LOOKUP 函数试图引用不存在的单元格,则返回 #REF! 错误值,例如:

    • 输入 LOOKUP 函数后删除的单元格。

    • LOOKUP 函数中的相对引用,在将函数复制到其他单元格时变得无效。

  • 如果正在比较的单元格的内容具有不同的数据类型,LOOKUP 函数可能无法返回正确的值。

  • 如果 lookup_value 或 array 单元格的开头或结尾处有不可见的空格,LOOKUP 函数可能无法返回正确的值。

  • LOOKUP 函数的数组形式与 HLOOKUP 和 VLOOKUP 函数非常相似。不同之处在于 HLOOKUP 在第一行搜索 lookup_value 的值,VLOOKUP 在第一列搜索,而 LOOKUP 根据数组的维度进行搜索。

    • 如果数组的宽度大于高度(列数多于行数),LOOKUP 函数将在第一行搜索 lookup_value 的值。

    • 如果数组是正方形或高度大于宽度(行数多于列数),LOOKUP 函数将在第一列搜索。

    • 使用 HLOOKUP 和 VLOOKUP 函数,可以垂直或水平索引,但 LOOKUP 函数始终选择行或列中的最后一个值。

适用性

Excel 2007、Excel 2010、Excel 2013、Excel 2016

示例

向量形式

Lookup Vector Form Function

数组形式

Lookup Array Form Function
advanced_excel_lookup_reference_functions.htm
广告