如何实现 Excel 中的 Left LOOKUP

2025年3月17日 | 阅读 7 分钟

VLOOKUP 是最常用的 Excel 函数之一,它在垂直(或向右)组织的表格中查找数据。如果我们要查找表中的值并返回其左侧的相应值,而不是向右查找呢?为了解决这个问题,Excel 在 Excel 365 或 Excel 2021 之前没有提供任何预定义公式。在早期版本中,可以通过简单地组合 INDEXMATCH 函数来实现左侧查找。

但现在您不再需要组合这两个函数,因为一个函数就可以满足这些要求。您只需要指定查找表,XLOOKUP 就会为您处理其余任务。

在本教程中,我们将学习这两种方法的逐步实现,以获取左侧查找功能。

  1. 使用 Index 和 Match 函数进行左侧查找
  2. 使用 XLOOKUP 函数本地执行左侧查找

使用 Index 和 Match 函数进行左侧查找

对于以前的 Excel 版本(直到 Excel 365 和 Excel 2021),Microsoft 没有引入任何可以处理左侧查找操作的特定公式。如果您正在使用以前的 Excel 版本,可以通过组合 INDEX 和 MATCH 函数来实现左侧查找。

但在继续之前,让我们先了解一下 INDEX 和 MATCH 函数是什么

什么是 INDEX 函数?

“Excel 中的 INDEX 函数是一个内置函数,它返回给定数组或单元格区域中指定位置的值。此函数还用于检索单个值或整行和整列。”

语法

参数

  1. Array(必需) - 此参数表示单元格区域或数组常量。
  2. row_num(必需) - 此参数表示给定数组中的行位置。
  3. col_num [可选] - 此参数表示指定数组或单元格区域中的列位置。

返回值

此函数根据行和列号索引,返回指定表格或数组中查找数据的值。

什么是 MATCH 函数?

Excel MATCH 函数用于确定项目中某个项目在某个范围内的位置。它返回在指定 lookup_array 中找到的值的位置。例如,我们可以使用 MATCH 在此电子产品列表中查找“手机”项目的位置。

语法

参数

  1. lookup_value(必需) - 此参数表示用户希望在 lookup_array 中匹配的值。
  2. lookup_array(必需) - 此参数表示单元格区域或数组引用。
  3. match_type [可选] - 此参数可以根据您的要求接受四个值;如果您跳过此参数,默认情况下它会取 0 作为其值并返回精确匹配。
    • 0 - 如果您想要精确匹配,可以输入此值。
    • -1 - 如果您正在寻找精确匹配或下一个更小的值,可以输入此值。如果未找到精确匹配,则返回下一个更小的值。
    • 1 - 如果您想要返回精确匹配或下一个更大的值,可以输入此值。如果未找到精确匹配,则返回下一个更大的值。
    • 2 - 此值表示通配符匹配。

返回值

Microsoft Excel Match 函数返回一个数字,表示在 lookup_array 中找到的项目的位置。

实现 LEFT LOOKUP 函数的步骤

由于我们已经涵盖了 INDEX 和 MATCH 函数的基本信息,现在让我们将它们组合在一个公式中。

考虑以下数据,一个表格显示了医院行业使用的设备列表及其当前状态,例如产品是否可用、是否在运输途中或两者都不是。

How to implement Left LOOKUP in Excel

如果我们想通过产品 ID 快速检查某些设备的状态,该怎么办?我们可以使用左侧查找来完成此操作。

执行以下步骤

步骤 1:加入 MATCH 函数

第一步是加入 Excel MATCH 函数。我们将使用下面的公式,其中我们将指定行号和数组来匹配值。

How to implement Left LOOKUP in Excel

结果,它将返回您想要在给定数组中匹配的值的位置。在我们的例子中,它返回 1,这意味着值 101 在指定范围 A3:A9 中的位置是 1。

步骤 2:将 MATCH 与 INDEX 函数合并

接下来,我们将匹配函数的输出与 INDEX 函数组合。对于 Index 函数,我们将使用指定数组和行号。

How to implement Left LOOKUP in Excel

步骤 3:返回状态值

结果,上述公式将快速查找指定数组 (C3:C9) 中的第一个元素,并返回状态。在我们的例子中,我们将得到以下结果。

How to implement Left LOOKUP in Excel

步骤 4:将 B2 单元格中的公式向下拖动到 B11 单元格。

接下来,为了将公式复制到下面的单元格中,我们将上面的公式向下拖动。由于我们对 lookup_array 范围使用了绝对引用 (($C$3:$C$9, $A$3:$A$9)),因此它不会改变并保持不变,而相对引用 (F5) 会随着您的向下拖动而改变。

它将返回以下输出

How to implement Left LOOKUP in Excel

总结上述公式,匹配函数将值与给定 array_range 匹配并返回其位置。INDEX 函数根据数字位置在单元格区域中的给定位置获取值。

使用 XLOOKUP 执行左侧查找

如果您有 Excel 365 或 Excel 2021,只需使用 XLOOKUP 函数即可执行左侧查找。

“Excel 中的 XLOOKUP 函数在一个范围或数组中查找给定值,并从另一列返回相应的值。”

使用此函数的优点是它可以在表格中查找两个位置,即垂直和水平,并且可以执行精确匹配(默认)、近似匹配(找到最接近的数据)或通配符匹配(使用通配符找到部分匹配)。

语法

参数

  1. Lookup_value(必需) - 此参数表示要在表中搜索的值。
  2. Lookup_array(必需) - 此参数表示要搜索的表格或范围或数组。
  3. Return_array(必需) - 它表示将从中返回值范围或数组。
  4. If_not_found [可选] - 这是一个可选参数,表示如果未找到匹配项将返回的值。如果您跳过此参数,则返回 #N/A 错误。
  5. Match_mode [可选] - 此参数可以根据您的要求接受四个值;如果您跳过此参数,默认情况下它会取 0 作为其值并返回精确匹配。
    • 0 - 如果您想要精确匹配,可以输入此值。
    • -1 - 如果您正在寻找精确匹配或下一个更小的值,可以输入此值。如果未找到精确匹配,则返回下一个更小的值。
    • 1 - 如果您想要返回精确匹配或下一个更大的值,可以输入此值。如果未找到精确匹配,则返回下一个更大的值。
    • 2 - 此值表示通配符匹配。
  6. Search_mode [可选] - 此参数帮助用户管理搜索方向。如果您跳过此参数,默认情况下它会取 1 作为其值并从数组的第一个位置开始搜索到最后一个位置。它可以接受以下值
    • 1 - 输入此值将从定义数组的第一个位置开始搜索到最后一个位置。
    • -1 - 输入此值将以相反顺序开始搜索,即从最后一个位置到第一个位置。
    • 2 - 如果您希望进行二进制搜索且数据按升序排序,则使用此值。
    • -2 - 如果您希望进行二进制搜索且数据按降序排序,则使用此值。

返回值

XLOOKUP 函数在范围或数组中搜索预定义值,并从另一列返回相关值。

示例

例如,让我们将产品列添加到示例表的左侧。我们旨在根据 ID 号获取产品名称。

Xlookup 公式如下

以下是步骤

  1. 在 Excel 单元格中输入公式并按 Enter 键。
    How to implement Left LOOKUP in Excel
  2. 结果,它将返回给定 ID 的产品名称。
    How to implement Left LOOKUP in Excel
  3. 向下拖动上述公式。由于我们对 lookup_array 范围使用了绝对引用,因此它保持不变,而相对值会发生变化。

只需一个公式,您就完成了!因此,如果您使用的是以前的 Excel 版本,请快速升级到新版本;此外,Microsoft 在最新版本中引入了各种其他函数和功能。但在此之前,请尝试使用左侧查找!