Excel HLOOKUP函数怎么用? Excel中的高效查找技巧
Microsoft Excel 是数据管理和分析的首选应用程序,提供大量功能来简化各种任务。在这些函数中,HLOOKUP是一个强大的工具,可以让用户进行水平查找。在这篇文章中,我将深入探讨 HLOOKUP 的概念、它的语法以及它的实际应用。
Excel 中的 HLOOKUP 是什么?
HLOOKUP 是“水平查找”的缩写,是一种 Excel 函数,允许用户在表或区域的第一行中搜索值,并从另一个指定行中检索相关值。就像其对应的 VLOOKUP(垂直查找)一样,HLOOKUP 旨在简化从大型数据集中查找和提取特定信息的过程。在处理水平组织的数据表时,它尤其有价值。
HLOOKUP 函数的语法
HLOOKUP函数的语法如下:
=HLOOKUP(lookup_value, table_array, row_index_num, [range_lookup])
- lookup_value:要在表或范围的第一行中搜索的值。
- table_array:包含查找值和要检索的数据的单元格范围。它必须包括包含查找值的行和包含相应数据的行。
- row_index_num:要检索的数据相对于行的行号(从1开始)
- [range_lookup]:可选参数,用于确定您想要精确匹配还是近似匹配。如果设置为 TRUE 或省略,Excel 将执行近似匹配(默认行为)。如果设置为 FALSE,Excel 将执行精确匹配。
1、问题描述
如下图:是一张集团公司的升职加薪表。
现在需要将集团公司中部分人员的岗位工资、薪级工资、岗位补贴和合计等内容引用到一张新表中。
正常情况下,我们会这样写公式:
【L2】单元格输入如下公式:
=VLOOKUP($K2,$B:$H,COLUMN(D1),0)
公式解析:
以【K2】单元格的内容:「武胜」 作为查找值,在数据源区域 B 到 H 列中进行查找,如果查找到就返回第 4 列对应的值。
公式向右拖动一个单元格,COLUMN (D1)(即数字 4)会变成 COLUMN (E1)(即数字 5),以此类推。
但是,大家有没有发现,他只返回了每个人员第一次出现的值,如果,我们现在只需要返回升职加薪之后的数据,那该怎么办呢?
这个时候,就轮到它的二师弟猪哥(Hlookup)上场了。
那我们一起来看看它的表演吧。
2、解决问题
Hlookup 这个函数与 Vlookup 函数是一对孪生兄弟,
Vlookup 是垂直方向查找,返回列对应的值。
而 Hlookup 是水平方向查找,返回行对应的值。
我们在【L2】单元格输入如下公式:
=HLOOKUP(L$1,$B$2:$H$14,MATCH($K2,$B$2:$B$14,0)+1,0)
公式解析:
这个函数也有四个参数,与 vlookup 完全相同。
语法如下:
第❶参数是 lookup_value 查找值,
第❷参数是 table_array 查找区域,
第❸参数是 row_index_num 返回对应的行值。
第❹参数是 range_lookup 为精确查找。
查找值为:【L1】单元格的内容【岗位工资】,
查找区域为:$B$2:$H$14,即首列,必须包含查找值。
返回对应的行值,用了一个 Match 来配合下,
MATCH($K2,$B$2:$B$14,0)
第一参数查找值【K2】单元格中的值「武胜」。
第二参数查找区域【$B$2:$B$14】,这个姓名所在的单元格区域中查找,并返回在这个区域中是排到第几个单元格。比如排到第 4,就返回数字 4。
第三参数为 0,表示精确查找。
因为 MATCH 函数也是返回第一查找到的值所对应的数字,所以让它的返回值 + 1,就返回了升职加薪之后的所在行的数字了。即 4+1=5。
于是 Hlookup 函数的结果如下:
=HLOOKUP ("岗位工资",$B$2:$H$14,5,0)
如下图所示:
备注:Match 函数也将其中合并单元格中的空白单元格算在内。
3、知识扩展
某些小伙伴可能很好奇,是否一定不能用 Vlookup 函数解决这个问题,
或者有的小伙伴会很痴迷于用 Vlookup 函数,一定要用其解决。这倒也不是不行。
但是,这里需要结合 IF 函数,并进行数据区域重新构造。只有满足 Vlookup 的查找要求才能让其正确返回值。如下图:
=VLOOKUP($K2,IF({1,0},$B$3:$B$13,E$4:E$14),2,0)
公式解析:
与常规的 Vlookup 函数的第二参数不同的是,
这里用 IF 函数进行了两个区域的重新构造。
IF 的第二参数是:查找的区域,即:$B$3:$B$13
IF 的第三参数是:返回的区域,即:E$4:E$14
而且是错行排列的。正好符合 Vlookup 函数返回第一个查找值的要求。
另外:IF 的第三参数是:返回的区域,即:E$4:E$14,是一个行绝对引用,列相对引用,这样在向右拖动公式的时候,可以返回正确的列。
因为这个公式是数组公式,所以还需要按三键【Ctrl+Shift+Enter】结束(PS.Office 365 按【Enter】即可)。
上面的问题到此就解决了。
But,领导们的想法是会随时变化的。
比如,现在的领导的要求是:
不仅需要看升职加薪之后的明细数据,也需要同时查看升职加薪之前的数据。那该怎么办呢?就像下图这样:
这种情况下,如果要用函数的话,还真是要猪哥上场了。
而且原来的公式基本不用改动,只需要增加一个求余函数 + 返回行号的函数就行。
公式如下:
公式解析:
第三参数那里增加 MOD (ROW (A2),2)。其中:
ROW (A2),返回行号 2(即:ROW (A2)=2),作为 MOD 的函数参数。
MOD (2,2),然后对 2 求余额数即为:0。(即:MOD (2,2)=0)
然后 MATCH 查找到的值再加上 0 值,还是返回 MATCH 的值。
公式向下拖动即返回:MOD (ROW (A3),2)。其中:ROW (A3),返回行号 3(即:ROW (A3)=3),作为 MOD 的函数参数。
MOD (3,2), 然后对 3 求余额数即为:1。(即:MOD (3,2)=1)
最终 MATCH 的返回值 + 1。
这里的关键点是:
用 MOD 函数来代替原来公式中的 + 1 这个值,调节返回 0 和 1 两个数字。
4、写在最后
今天我们分享了 Vlookup 函数二师弟,猪哥 Hlookup 函数的用法。
在大部分情况下,Vlookup 的查找还是非常方便实用的,但是在某些情况下,真不如它的师弟 Hlookup 函数。
另外在上面的例子中,虽然 Vlookup 函数结合 IF 函数进行数据区域重新构造也能解决问题,但是在实际工作中,不建议使用。
因为,它是一个数组公式,在数据比较多的情况下,会导致表格很卡。
所以,尽量不使用数组公式,只使用简单公式的组合,而且组合越少越好,计算次数越少越好,这才是工作中需要实现的目标。
好了,今天我们就分享到这里,如果喜欢此篇文章,欢迎点赞 & 转发!
除了上面介绍的 Hlookup 函数,Excel 里还有很多的函数,比如 Lookup、Xlookup、Sumif 等等。
使用 HLOOKUP 函数时的常见错误
在 Excel 中使用 HLOOKUP 函数时,您可能会遇到一些常见错误。以下是最常见的问题以及解决方法:
1. #N/A 错误
原因:当 HLOOKUP 函数无法在 table_array 的第一行中找到查找值的匹配项时,会发生 #N/A 错误。当查找值不存在于顶行时,就会发生这种情况。
解决方案:仔细检查查找值和 table_array 第一行中的数据以确保它们匹配。如有必要,请检查可能导致不匹配的前导/尾随空格。
2.#参考!错误
原因:#REF!当 HLOOKUP 公式中的 table_array 引用无效或已被删除时,会发生错误。
解决方案:检查 table_array 引用以确保其有效并涵盖查找所需的数据范围。如果您意外删除了 table_array 或其一部分,请恢复引用。
3.#VALUE!错误
原因:#VALUE!当 row_index_num 参数不是有效数字或公式包含不正确的数据类型时,通常会发生错误。
解决方案:确保 row_index_num 参数是一个正整数,表示要返回结果的行号。另外,检查公式中使用的数据类型是否存在不一致。
有效使用 HLOOKUP 函数的专家提示
- 以表格形式组织数据:HLOOKUP 设计用于处理水平排列的数据。确保您的数据以表格格式组织良好,标题位于顶行。
- 对数据进行排序:与 VLOOKUP 类似,根据 table_array 第一行中的值按升序对数据进行排序将提高 HLOOKUP 的性能,尤其是对于近似匹配。
- 使用精确匹配:要获得准确的结果,请将 range_lookup 参数设置为 FALSE 以实现精确匹配。这可确保您获得所需的精确匹配,并避免任何潜在的错误结果。
- 将 HLOOKUP 与 IFERROR 结合使用:与 VLOOKUP 一样,使用 IFERROR 可以更优雅地处理错误。使用 IFERROR 包装 HLOOKUP 函数允许您显示自定义消息或在未找到查找值时返回默认值。
- 锁定 table_array 范围:如果要将 HLOOKUP 公式复制到多个单元格,请对 table_array 参数使用绝对单元格引用 ($)。这可以防止在复制公式时 table_array 的引用发生更改。
- 检查前导/尾随空格:确保数据干净且 table_array 第一行中没有任何前导或尾随空格。多余的空格可能会导致 HLOOKUP 无法找到匹配项。
- 最大限度地减少易失性函数:避免将 HLOOKUP 与易失性函数(例如 TODAY()、NOW() 或 RAND())一起使用,以保持最佳的电子表格性能。
以上就是Excel中Hlookup 函数的使用技巧,希望大家喜欢,请继续关注脚本之家。
相关推荐:
Excel怎么快速合并1000个单元格? Phonetic函数的用法
相关文章
- 这篇文章主要介绍了excel除法公式怎么输入?excel函数除法公式使用方法的相关资料,需要的朋友可以参考下本文详细内容介绍2022-05-20
excel数字如何用函数四舍五入 excel设置函数四舍五入方法
在excel众多函数中,四舍五入函数是使用率比较高的一种函数,所以掌握四舍五入函数很有必要。今天,小编详细讲解一下excel四舍五入函数的用法2022-05-22excel如何不用函数去掉数字中的小数 excel去掉数字中的小数方法
在利用excel表格时,我们经常会写大量的数据,对于一些小数点及后边的数字而言,想要删除是一项很大的工程,因为数据比较多,很麻烦,我们可以快速删除小数点后边的数字,2022-05-27excel表格常用函数技巧大全 excel中最常用的30个函数分享
办公免不了要做资料算量,Excel是工作中最常用的工具之一。只要搞清楚它的一些使用小技巧,工作效率那是嗖嗖的往上蹭啊。下面这些,你就绝对不能错过2022-06-11- 这篇文章主要介绍了10种excel多条件查找函数的使用方法汇总的相关资料,需要的朋友可以参考下本文详细内容介绍2022-07-14
excel函数公式大全 excel最常用的八个函数的使用方法
这篇文章主要介绍了excel函数公式大全 excel最常用的八个函数的使用方法的相关资料,需要的朋友可以参考下本文详细内容介绍2022-07-15- 今天跟大家分享10组日常工作中经常需要用到的Excel公式组合,大家如果遇到类似的问题,更改数据区域,直接套用即可2023-01-04
Excel如何用SORT函数实现排序? 排序函数SORT用法解析
Excel如何用SORT函数实现排序?Excel中的数据想要排序,该怎么操作呢?下面我们就来看看排序函数SORT用法解析,详细请看下文介绍2023-02-09excel文本函数怎么用? LEN/LENB/LEFT函数的用法
excel文本函数怎么用?文本函数中LEN/LENB/LEFT很常用,该怎么使用呢?下面我们就来看看详细的教程2023-05-09excel中查询函数怎么用? hyperlink函数的使用方法及实例
excel中查询函数怎么用?excel中有很多函数经常使用,其中一个函数是无法被代替的,它就是hyperlink函数,下面我们就来看看hyperlink函数的使用方法及实例2023-05-23
最新评论