ZetCode

Excel HLOOKUP 函数

最后修改于 2025 年 4 月 4 日

HLOOKUP 函数是 Excel 中一个强大的查找工具,它在表格的顶行中搜索值,并返回指定行中的值。本教程提供了使用 HLOOKUP 函数的全面指南,附带详细示例。您将学习基本语法、实际应用和高级技术,以掌握此必不可少的 Excel 函数。

HLOOKUP 函数基础

HLOOKUP 函数通过在表格的顶行中搜索值并返回指定行中的值来执行水平查找。它非常适合水平排列的数据。

组成部分 描述
函数名称 HLOOKUP
语法 =HLOOKUP(lookup_value, table_array, row_index_num, [range_lookup])
参数 4 个参数(最后一个为可选)
返回值 从指定行返回匹配的值

此表分解了 HLOOKUP 函数的关键组成部分。它显示了函数名称、语法格式、参数详细信息和返回值特性。

基本 HLOOKUP 示例

此示例演示了 HLOOKUP 的最简单用法,用于在水平表格中查找产品价格。

A B C D
Product Apple Banana Orange
价格 1.25 0.75 1.10
=HLOOKUP("Banana",A1:D2,2,FALSE)

该表显示第一行的产品名称,第二行的价格。HLOOKUP 公式搜索“Banana”并从第 2 行返回其价格。

基本 HLOOKUP 公式
=HLOOKUP("Banana",A1:D2,2,FALSE)

此公式在 A1:D2 的顶行中搜索“Banana”,并返回同一列第 2 行的值。FALSE 参数确保精确匹配。结果将是 0.75。

带单元格引用的 HLOOKUP

HLOOKUP 更实用的用法是使用查找值的单元格引用。这使得公式动态且可重用。

A B C D
月份 一月 二月 三月
销售额 1200 1500 1800
=HLOOKUP("Feb",A1:D2,2,FALSE)

此表以水平方式显示月度销售数据。HLOOKUP 公式使用单元格引用查找特定月份的销售额。

带单元格引用的 HLOOKUP
=HLOOKUP("Feb",A1:D2,2,FALSE)

该公式在顶行中搜索“Feb”,并从第 2 行返回销售数字。结果是 1500。使用单元格引用使公式具有适应性。

带近似匹配的 HLOOKUP

当最后一个参数为 TRUE 或省略时,HLOOKUP 可以执行近似匹配。这对于查找范围或分级数据非常有用。

A B C D
分数 60 70 80
等级 D C B
=HLOOKUP(65,A1:D2,2,TRUE)

此表显示分数范围和相应的等级。HLOOKUP 公式使用近似匹配查找 65 分的相应等级。表必须按升序排序才能使近似匹配正常工作。

带近似匹配的 HLOOKUP
=HLOOKUP(65,A1:D2,2,TRUE)

公式在顶行中搜索 65,并从第 2 行返回等级。由于 65 落在 60-70 之间,因此返回“D”。为了使近似匹配正常工作,表必须按升序排序。

带通配符的 HLOOKUP

在使用精确匹配模式 (FALSE) 时,HLOOKUP 支持通配符 (* 和 ?) 进行部分匹配。此示例演示了此功能。

A B C D
代码 APP123 BAN456 ORA789
类别 水果 水果 水果
=HLOOKUP("BAN*",A1:D2,2,FALSE)

此表显示产品代码和类别。HLOOKUP 公式使用通配符在代码中查找部分匹配。

带通配符的 HLOOKUP
=HLOOKUP("BAN*",A1:D2,2,FALSE)

该公式搜索任何以“BAN”开头的代码,并从第 2 行返回类别。星号 (*) 代表任何字符序列。结果是“水果”。

带多行的 HLOOKUP

HLOOKUP 可以从表数组中的任何行检索数据,而不仅仅是第二行。此示例演示了如何访问第三行的数据。

A B C D
员工 John Sarah Mike
部门 销售额 人力资源 IT
薪水 5000 4500 5200
=HLOOKUP("Sarah",A1:D3,3,FALSE)

此表包含员工数据,其中有多行信息。HLOOKUP 公式从第三行检索薪水信息。

带多行的 HLOOKUP
=HLOOKUP("Sarah",A1:D3,3,FALSE)

该公式在顶行中搜索“Sarah”,并从第 3 行返回薪水。结果是 4500。row_index_num 参数决定返回哪一行的数据。

HLOOKUP 错误处理

如果找不到查找值,HLOOKUP 将返回 #N/A。此示例展示了如何使用 IFERROR 优雅地处理此类错误。

A B C D
Product 小工具 零件 东西
价格 10.99 15.50 8.75
=IFERROR(HLOOKUP("Doodad",A1:D2,2,FALSE),"未找到")

此表演示了当查找值不在表中时如何处理错误。IFERROR 函数会显示用户友好的消息,而不是 #N/A。

带错误处理的 HLOOKUP
=IFERROR(HLOOKUP("Doodad",A1:D2,2,FALSE),"Not Found")

该公式尝试在表中查找“Doodad”。找不到时,它会显示“未找到”,而不是 #N/A。这使得在处理潜在的缺失数据时,电子表格更具用户友好性。

HLOOKUP 函数对于在 Excel 中处理水平结构化数据至关重要。从基本查找、通配符到错误处理的高级技术,HLOOKUP 提供了强大的数据检索能力。掌握其各种应用将显著提高您处理电子表格中水平数据排列的能力。

作者

我是 Jan Bodnar,一名充满激情的程序员,拥有丰富的编程经验。我自 2007 年起就开始撰写编程文章。至今,我已撰写了 1400 多篇文章和 8 本电子书。我在编程教学方面拥有超过十年的经验。

列出 所有 Excel 公式