该函数的语法规则如下:
HLOOKUP(lookup_value,table_array,row_index_num,range_lookup)
参数说明
1、Lookup_value
Lookup_value为需要在数据表第一行中进行查找的数值。Lookup_value 可以为数值、引用或文本字符串 。
2、Table_array
Table_array为需要在其中查找数据的数据表。使用对区域或区域名称的引用。
3、Row_index_num
Row_index_num为table_array 中待返回的匹配值的行序号。Row_index_num 为 1 时,返回 table_array 第一行的数值,row_index_num 为 2 时,返回 table_array 第二行的数值,以此类推。
如果 row_index_num 小于 1,函数 HLOOKUP 返回错误值#VALUE!;如果 row_index_num 大于 table_array 的行数,函数 HLOOKUP 返回错误值 #REF!。
4、Range_lookup
Range_lookup为一逻辑值,指明函数 HLOOKUP 查找时是精确匹配,还是近似匹配。如果为TURE或者1,则返回近似匹配值。也就是说,如果找不到精确匹配值,则返回小于 lookup_value 的最大数值。
如果 range_lookup 为 FALSE或0,函数 HLOOKUP 将查找精确匹配值,如果找不到,则返回错误值#N/A。如果range_lookup 省略,则默认为0(精确匹配)。
表格或数值数组 (数组:用于建立可生成多个结果或可对在行和列中排列的一组参数进行运算的单个公式。数组区域共用一个公式;数组常量是用作参数的一组常量。)的首行查找指定的数值,并在表格或数组中指定行的同一列中返回一个数值。
当比较值位于数据表的首行,并且要查找下面给定行中的数据时,请使用函数 HLOOKUP。当比较值位于要查找的数据左边的一列时,请使用函数 VLOOKUP。 HLOOKUP 中的 H 代表“行”。
注解
如果函数 HLOOKUP 找不到 lookup_value,且 range_lookup 为 TRUE,则使用小于 lookup_value 的最大值。 如果函数 HLOOKUP 小于 table_array 第一行中的最小数值,函数 HLOOKUP 返回错误值#N/A。
如果 range_lookup 为 FALSE 且 lookup_value 为文本,则可以在 lookup_value 中使用通配符、问号 (?) 和星号 (*)。问号匹配任意单个字符;星号匹配任意字符序列。如果要查找实际的问号或星号,请在该字符前键入波形符 (~)。
扩展资料
Vlookup和Hlookup函数的比较
Excel提供了两种查找函数,用来检索存于一个表中的信息,它们就是 HLOOKUP和VLOOKUP。要在一个单元格中插入或寻找一个值,而这个值在工作表中的另一个地方时,查找函数是一个好办法。
查找函数在一个特定的区域中搜寻行或列(在Excel中叫做查表)。这两个函数使用同样的参数(但下面的情况例外)。参数指一个函数用来执行操作或计算的值。一个函数使用的参数类型对函数来说是特定的。
VLOOKUP和 HLOOKUP函数查找表中一个特定的值(任意行列区域或命名的区域)。例如,这个值可能是一个人的名字。这些函数从表中检索这个值的相关信息(例如此人的生日)并把数据放在活动单元格中。您需要说明想要的值离查找值有几行或几列。
例如,Lakewood Mountains Resort公司的娱乐部经理保留了一张客户的孩子的姓名房间号和生日的表。每天,她使用 LOOKUP函数在表中寻找当天的日期,并显示生日是这一天的每个孩子的名字和房间号。然后,凭这些信息把生日礼物送到相应的房间。
HLOOKUP函数在行中查找(即水平查找),VLOOKUP函数在列中查找(即垂直查找)每个函数最多可以使用4个参数。除了参数 range lookup,其他参数是必需的:
HLOOKUP(lookup_value, table_array, row_index_num, range_lookup)
VLOOKUP (lookup_value, table_array, col_index_num, range_lookup)
语法
HLOOKUP(lookup_value,table_array,row_index_num,range_lookup)
Lookup_value 为需要在数据表第一行中进行查找的数值。Lookup_value 可以为数值、引用或文本字符串。
Table_array 为需要在其中查找数据的数据表。可以使用对区域或区域名称的引用。
Table_array 的第一行的数值可以为文本、数字或逻辑值。
如果 range_lookup 为 TRUE,则 table_array 的第一行的数值必须按升序排列:...-2、-1、0、1、2、…、A-Z、FALSE、TRUE;否则,函数 HLOOKUP 将不能给出正确的数值。如果 range_lookup 为 FALSE,则 table_array 不必进行排序。
文本不区分大小写。
可以用下面的方法实现数值从左到右的升序排列:选定数值,在“数据”菜单中单击“排序”,再单击“选项”,然后单击“按行排序”选项,最后单击“确定”。在“排序依据”下拉列表框中,选择相应的行选项,然后单击“升序”选项。
Row_index_num 为 table_array 中待返回的匹配值的行序号。Row_index_num 为 1 时,返回 table_array 第一行的数值,row_index_num 为 2 时,返回 table_array 第二行的数值,以此类推。如果 row_index_num 小于 1,函数 HLOOKUP 返回错误值 #VALUE!;如果 row_index_num 大于 table-array 的行数,函数 HLOOKUP 返回错误值 #REF!。
Range_lookup 为一逻辑值,指明函数 HLOOKUP 查找时是精确匹配,还是近似匹配。如果为 TRUE 或省略,则返回近似匹配值。也就是说,如果找不到精确匹配值,则返回小于 lookup_value 的最大数值。如果 range_value 为 FALSE,函数 HLOOKUP 将查找精确匹配值,如果找不到,则返回错误值 #N/A!。
说明
如果函数 HLOOKUP 找不到 lookup_value,且 range_lookup 为 TRUE,则使用小于 lookup_value 的最大值。
如果函数 HLOOKUP 小于 table_array 第一行中的最小数值,函数 HLOOKUP 返回错误值 #N/A!。