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 可能无法返回正确的值。 文本不区分大小写。