LOOKUP 函数

应用对象
Microsoft 365 专属 Excel Microsoft 365 Mac 版专属 Excel Excel 2024 Excel 2024 for Mac Excel 2021 Excel 2021 for Mac Excel 2019 Excel 2016

需要查找单个行或列并从第二行或列中的相同位置查找值时,请使用 LOOKUP( 查找和引用函数之一)。

例如,假设你知道某个汽车部件的部件号,但是不知道价格。 如果在单元格 H1 中输入汽车部件号,可在单元格 H2 中使用 LOOKUP 函数返回价格。

LOOKUP 函数的用法示例

可使用 LOOKUP 函数搜索一行或一列。 在上面的示例中,我们在 D 列中搜索价格。

提示

考虑一个较新的查找函数,具体取决于你使用的版本。

  • 使用 VLOOKUP 搜索一行或一列,或搜索多个行和列 (,如表) 。 该函数是 LOOKUP 的大幅度改进版本 观看有关如何使用 VLOOKUP 的视频
  • 如果使用 Microsoft 365,请使用 XLOOKUP - 它不仅速度更快,还允许你 (向上、向下、向左、向右) 的任何方向搜索。

LOOKUP 有两种使用方式:向量形式和数组形式

  • 向量形式:可使用 LOOKUP 的这种形式在一行或一列中搜索值。 如果要指定包含要匹配的值的区域,请使用这种形式。 例如,如果要在 A 列中向下搜索值到第 6 行。
    向量的示例
  • 数组形式:强烈建议使用 VLOOKUPHLOOKUP ,而不是数组形式。 观看此视频,了解如何使用 VLOOKUP。 提供数组形式是为了与其他电子表格程序兼容,这种形式的功能有限。
    数组是要搜索的行和列(如表)中的值的集合。 例如,如果要在 A 列和 B 列中向下搜索值到第 6 行。 LOOKUP 将返回最接近的匹配项。 要使用数组形式,必须对数据排序。
    包含数组的表的示例

向量形式

LOOKUP 的向量形式在单行区域或单列区域(称为“向量”)中查找值,然后返回第二个单行区域或单列区域中相同位置的值。

语法

LOOKUP(lookup_value, lookup_vector, [result_vector])

LOOKUP 函数向量形式语法具有以下参数:

  • lookup_value 必填。 LOOKUP 在第一个向量中搜索的值。 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 错误值。

矢量示例

你可以在自己的 Excel 工作表中尝试这些示例,了解 LOOKUP 函数的工作方式。 在第一个示例中,最终生成的电子表格如下所示:

LOOKUP 函数的使用示例

  1. 复制下表中的数据,然后将其粘贴进新的 Excel 工作表中。

    将此数据复制到 A 列中 将此数据复制到 B 列中
    频率 颜色
    4.14 红色
    4.19 橙色
    5.17 黄色
    5.77 绿色
    6.39 蓝色
  2. 接下来,将下表中的 LOOKUP 公式复制到工作表的 D 列中。

    将此公式复制到 D 列中 下面是此公式执行的操作 下面是你将看到的结果
    =LOOKUP(4.19, A2:A6, B2:B6) 在 A 列中查找 4.19,然后返回 B 列中同一行内的值。 橙色
    =LOOKUP(5.75, A2:A6, B2:B6) 在 A 列中查找 5.75,与最接近的较小值 (5.17) 匹配,然后返回 B 列中同一行内的值。 黄色
    =LOOKUP(7.66, A2:A6, B2:B6) 在 A 列中查找 7.66,与最接近的较小值 (6.39) 匹配,然后返回 B 列中同一行内的值。 蓝色
    =LOOKUP(0, A2:A6, B2:B6) 在 A 列中查找 0,并返回错误,因为 0 小于列 A 中的最小值 (4.14)。 #N/A
  3. 要让这些公式显示结果,可能需要在 Excel 工作表中选择它们,按 F2,然后按 Enter。 如果需要,请调整列宽以查看所有数据。

数组形式

提示

强烈建议使用 VLOOKUPHLOOKUP ,而不是数组形式。 观看此有关 VLOOKUP 的视频;其中提供了示例LOOKUP 的数组形式是为了与其他电子表格程序的兼容性而提供的,但其功能有限。

LOOKUP 的数组形式在数组的第一行或第一列中查找指定值,并从数组最后一行或最后一列的相同位置返回值。 当要匹配的值位于数组的第一行或第一列中时,请使用 LOOKUP 的这种形式。

语法

LOOKUP(lookup_value, array)

LOOKUP 函数数组形式语法具有以下参数:

  • lookup_value 必填。 LOOKUP 在数组中搜索的值。 lookup_value参数可以是数字、文本、逻辑值,也可以是引用值的名称或引用。

    • 如果 LOOKUP 找不到 lookup_value 的值,它将使用数组中小于或等于 lookup_value的最大值。
    • 如果 lookup_value 的值小于第一行或第一列 (中的最小值,具体取决于数组维度 ) ,LOOKUP 将返回 #N/A 错误值。
  • 阵 列 必填。 包含要与 lookup_value 进行比较的文本、数字或逻辑值的单元格区域。
    LOOKUP 的数组形式与 HLOOKUPVLOOKUP 函数非常相似。 区别在于 ,HLOOKUP 在第一行中搜索 lookup_value 的值, VLOOKUP 在第一列中搜索, LOOKUP 根据数组的维度进行搜索。

    • 如果数组覆盖的区域比其高 (列多于) 行, 则 LOOKUP 在第一行中搜索 lookup_value 的值。

    • 如果数组是正方的或者高度大于宽度(行数多于列数),LOOKUP 会在第一列中进行搜索。

    • 使用 HLOOKUPVLOOKUP 函数,您可以通过索引以向下或遍历的方式搜索,但是 LOOKUP 始终选择行或列中的最后一个值。

      重要

      数组中的值必须按升序排列:..., -2, -1, 0, 1, 2, ..., A-Z, FALSE, TRUE;否则,LOOKUP 可能无法返回正确的值。 文本不区分大小写。