Excel 中的 HLOOKUP 公式

17 Mar 2025 | 6 分钟阅读

HLOOKUP 是一个“水平查找”,用于在最顶行中搜索值。它是一个 Excel 函数,可帮助用户在 Excel 工作表中从最顶行搜索和检索数据。此函数的运行方式与其他 Excel 函数略有不同。

在 HLOOKUP 的名称中,“H”表示水平。这意味着搜索和检索操作是在行上水平向右移动执行的。因此,HLOOKUP 也被称为水平查找

注意:与 MATCH() 函数不同,它不返回匹配项的位置;它返回匹配值。

HLOOKUP() 是 VLOOKUP() 方法 的兄弟。它根据定义范围内的最顶行查找值。基本上,它对 Excel 数据的标题执行两个(搜索和检索)操作。

HLOOKUP 的用途

与 MATCH() 函数一样,HLOOKUP() 也支持数据的精确匹配和近似匹配。此外,它还支持通配符(*,?)运算符,用于对 Excel 数据进行部分匹配。

用户可以使用这些运算符对数据执行部分匹配。它在定义的范围和行中查找数据。

语法和参数

HLOOK() 函数包含四个参数,其语法如下:

HLOOKUP(LOOKUP_value, table, row_index, [LOOKUP_range])

其中,前三个参数是强制性的,LOOKUP_range 是可选的。

参数列表

参数描述
LOOKUP_value这是要在表格第一行中搜索的指定值。您可以将值作为字符串或单元格引用传递。
这是您要在其中搜索数据的单元格范围。例如,A1:H10
row_index定义要从其中检索数据的 Excel 表格的行号。例如,3(第 3 行)
[LOOKUP_range]它是 HLOOKUP 函数的一个可选参数,包含一个布尔值(1,0)以相应地执行操作。
  • 1 表示近似匹配(默认)
  • 0 表示精确值匹配

HLOOKUP() 的这些参数值用逗号分隔。

返回值

  1. HLOOKUP() 函数返回用户正在查找的值。
  2. 如果在指定详细信息中找不到该值,则会返回 #N/A 错误#N/A 指的是值不可用

要记住的要点

在使用 HLOOKUP() 函数处理 Excel 数据时,需要记住以下几个要点。

  • HLOOKUP 是不区分大小写的。因此,OrangeORANGE 对它来说是相同的。
  • 第一个参数 (LOOKUP_value) 应包含最顶行中的值。或者我们可以说它必须是表格的标题之一。
  • HLOOKUP 函数支持在 LOOKUP_value 参数中使用通配符(*,?)进行数据的部分匹配。

HLOOKUP() 函数生成的错误

如果指定值与条件匹配,HLOOKUP 函数会生成错误。这些错误是:

  1. #N/A 错误
  2. #VALUE! 错误
  3. #REF! 错误

#N/A 错误

如果在指定详细信息中找不到该值,则会返回 #N/A 错误#N/A 指的是值不可用错误。

#VALUE! 错误

如果 row_index 参数的值小于 1,即 row_index < 1,LOOKUP() 返回 #VALUE! 错误#VALUE! 指的是值错误

row_index<1 = #VALUE!

例如,range_index 为 0 或小于 0。

#REF! 错误

如果 row_index 大于 (>) 表格参数中的列数,即 row_index > 1,LOOKUP() 返回 #REF! 错误#REF! 指的是无效单元格引用错误

row_index > table 参数中的列数 = #REF!

请记住 - HLOOK() 一次只返回一个值或错误。

公式示例

让我们通过语法示例来理解。

=HLOOKUP("Headphones",B1:G10,5,0)

此处,

  • Headphones 是我们正在查找的列标题之一的值。
  • B2:H9 是 Excel 工作表中我们正在查找数据的范围。
  • 5 是将搜索值的行号。
  • 0 是可选的,但此处指定用于数据的精确匹配。

如何在 Excel 工作表中执行 HLOOKUP()?

HLOOKUP 函数的执行方式与其他 Excel 函数不同。让我们考虑一个示例来理解 HLOOKUP() 函数的工作原理。

我们在 Excel 工作表中有一些 7 天(1 周)的电子产品销售数据。现在我们将使用 HLOOKUP() 函数查找特定日期的特定电子产品销售。通过这种方式,它将帮助我们非常轻松地从大型数据集中查找数据。

HLOOKUP formula in Excel

请看以下步骤

示例 1

我们将找到耳机一天的销售额。在此示例中,我们查找第 3 天耳机的销售额。为此,请按照 HLOOKUP 公式的一些简单步骤操作:

步骤 1:选择一个单元格来存储结果,并像下面显示的那样写入 HLOOKUP 公式:

=HLOOKUP("Headphones",B1:G8,4,0)

HLOOKUP formula in Excel

步骤 2:Enter 键获取 5 月 4 日售出的耳机总数,您会看到它返回 11。这意味着 5 月 3 日总共售出了 11 个耳机。

HLOOKUP formula in Excel

您可以通过手动查找数据来验证 HLOOKUP 公式是否正常工作。请看下面如何验证:

HLOOKUP formula in Excel

错误消息示例

以下是 HLOOKUP() 生成的每个错误(#N/A、#REF、#VALUE)的三个不同示例。这些错误及其示例描述如下。

示例 1:未找到精确匹配 - #N/A 错误

正如我们已经讨论过的,如果 HLOOKUP() 函数在指定详细信息中未找到值,则返回 #N/A 错误#N/A 指的是值不可用错误。

请看下面的示例:

步骤 1:您可以看到我们正在 HLOOKUP() 公式中查找 Headphone,使用精确匹配 (0) 参数值。但在 Excel 表格中,标题是 Headphones,不相同。

HLOOKUP formula in Excel

步骤 2:一旦您为精确匹配不可用的值编写公式 (=HLOOKUP("Headphone",B1:G8,6,0)) 并按下 Enter 键,您将得到 #N/A 错误。

HLOOKUP formula in Excel

示例 2:当 row_index > 选定范围(表)时 - #REF! 错误

如果 row_index 参数值大于 table 参数中选择的列数,HLOOKUP() 函数将返回 #REF! 错误

row_index > table 参数中选择的列数 = #REF!

请看下面的示例:

步骤 1:您可以看到我们在 HLOOKUP() 公式中为 table 参数选择了 B1:G8 之间的范围,即直到第 8 行。但我们正在寻找 row_index 9,它不在定义的范围内。

HLOOKUP formula in Excel

步骤 2:一旦您编写公式 (=HLOOKUP("Headphone",B1:G8,9,0)),其中 row_index 高于选定范围,并按下 Enter 键,您将得到 #REF! 错误,如下所示。

HLOOKUP formula in Excel

示例 3:当 row_index < 1 时 - #VALUE! 错误

如果 row_index 参数值在目标 Excel 工作表中小于 1,HLOOKUP() 函数将返回 #VALUE! 错误

row_index < 1 = #VALUE!

#VALUE! 指的是值错误

请看下面的示例:

步骤 1:您可以看到我们在 HLOOKUP() 公式中为 table 参数选择了 B1:G8 之间的范围。但我们正在寻找 row_index = 0,它小于 1,即该行在 Excel 工作表中不可用。

HLOOKUP formula in Excel

步骤 2:一旦您编写公式 (=HLOOKUP("Headphone",B1:G8,0,0)),其中 row_index 小于 1,并按下 Enter 键,您将得到 #VALUE! 错误,如下所示。

HLOOKUP formula in Excel

在 HLOOKUP() 中使用通配符

HLOOKUP 函数可以使用通配符运算符。我们将在下面的示例中使用相同的 Excel 工作簿 -

步骤 1:我们将查找名称以 P 开头的产品在第四天的销售额。为此,请在第一个参数中使用星号 (*) 运算符并复制以下公式:

=HLOOKUP("P*",B1:G8,5,FALSE)

HLOOKUP formula in Excel

我们在第四个参数中使用了 FALSE 进行精确匹配。

步骤 2:现在,通过按下 Enter 按钮,获取名称以 P 开头的产品在第四天的销售额。

HLOOKUP formula in Excel

当它找到名称以 P 开头的第一个产品时,它返回第四天的值。请看上面的结果。

同样,您可以在其中使用另一个通配符运算符。