Excel 应用HLOOKUP函数实现水平查找

HLOOKUP函数用于在表格或数值数组的首行查找指定的数值,并在表格或数组中指定行的同一列中返回一个数值。当比较值位于数据表的首行,并且要查找下面给定行中的数据时,可以使用函数HLOOKUP(HLOOKUP中的H代表水平方向)。当比较值位于要查找的数据左边的一列时,则须使用函数VLOOKUP。

HLOOKUP函数的语法如下。


HLOOKUP(lookup_value,table_array,row_index_num,range_lookup)

各参数的作用介绍如下。

  • lookup_value:需要在数据表第一行中进行查找的数值。lookup_value可以为数值、引用或文本字符串。
  • table_array:需要在其中查找数据的数据表。使用对区域或区域名称的引用。
  • row_index_num:table_array中待返回的匹配值的行序号。
  • range_lookup:为一逻辑值,指明函数HLOOKUP查找时是精确匹配,还是近似匹配。

【典型案例】练习水平查找指定的数值。本例的原始数据如图15-11所示。

步骤1:在A2单元格中输入公式“=HLOOKUP(”CocaCola”,A1:C4,2,TRUE)”,用于在首行查找CocaCola,并返回同列中第2行的值。

步骤2:在A3单元格中输入公式“=HLOOKUP(”Fenda”,A1:C4,3,FALSE)”,用于在首行查找Fenda,并返回同列中第3行的值。

步骤3:在A4单元格A4中输入公式“=HLOOKUP(”F”,A1:C4,3,TRUE)”,用于在首行查找F,并返回同列中第3行的值。由于F不是精确匹配,因此将使用小于F的最大值CocaCola。

步骤4:在A5单元格A5中输入公式“=HLOOKUP(”Future Cola”,A1:C4,4)”,用于在首行查找Future Cola,并返回同列中第4行的值。

图15-11 本例的原始数据

步骤5:在A6单元格中输入公式“=HLOOKUP(2,{1,2,3;”a”,”b”,”c”;”d”,”e”,”f”},2,TRUE)”,用于在数组常量的第一行中查找3,并返回同列中第2行的值。计算结果如图15-12所示。

图15-12 计算结果

Excel 通过与首行值对比来查找值:HLOOKUP函数

当比较值位于数据表的首行,并且要查找下面给定行中的数据时,可通过HLOOKUP函数实现。HLOOKUP函数的语法为:=HLOOKUP(lookup_value,table_array, row_index_num,range_lookup),各参数的含义介绍如下。

※ lookup_value:用数值或数值所在的单元格指定在数组第一行中查找的数值。

※ 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:用TRUE或FALSE指定查找方法。

下面以查询成绩表中姓名为“张明”的学生的“数学”成绩为例,具体操作如下。

01 打开成绩表,选中需要显示结果的单元格。

02 在其中输入公式:=HLOOKUP(”数学”,A2:F8,3),然后按下“Enter”键确认,即可得到“张明”的“数学”成绩为“60”。

alt

Excel水平查找:HLOOKUP函数图解

HLOOKUP函数用于在表格或数值数组的首行查找指定的数值,并在表格或数组中指定行的同一列中返回一个数值。当比较值位于数据表的首行,并且要查找下面给定行中的数据时,可以使用函数HLOOKUP(HLOOKUP中的H代表“行”)。当比较值位于要查找的数据左边的一列时,则须使用函数VLOOKUP。

HLOOKUP函数的语法如下:


HLOOKUP(lookup_value,table_array,row_index_num,range_lookup)

其中,lookup_value参数为需要在数据表第1行中进行查找的数值。lookup_value可以为数值、引用或文本字符串。table_array参数为需要在其中查找数据的数据表。使用对区域或区域名称的引用。row_index_num参数为table_array中待返回的匹配值的行序号。range_lookup参数为一逻辑值,指明函数HLOOKUP查找时是精确匹配,还是近似匹配。

下面通过实例详细讲解该函数的使用方法与技巧。

打开“HLOOKUP.xlsx”工作簿,切换至“Sheet1”工作表,本例中的原始数据如图16-13所示。要求根据工作表中的数据内容,练习水平查找指定的数值。具体的操作步骤如下所示。

STEP01:选中A6单元格,在编辑栏中输入公式“=HLOOKUP(“CocaCola”,A1:C4,2,TRUE)”,用于在首行查找CocaCola,并返回同列中第2行的值,输入完成后按“Enter”键返回计算结果,如图16-14所示。

图16-13 原始数据

图16-14 A6单元格返回结果

STEP02:选中A7单元格,在编辑栏中输入公式“=HLOOKUP(“Fenda”,A1:C4,3,FALSE)”,用于在首行查找Fenda,并返回同列中第3行的值,输入完成后按“Enter”键返回计算结果,如图16-15所示。

STEP03:选中A8单元格,在编辑栏中输入公式“=HLOOKUP(“F”,A1:C4,3,TRUE)”,用于在首行查找F,并返回同列中第3行的值,由于F不是精确匹配,因此将使用小于F的最大值CocaCola。输入完成后按“Enter”键返回计算结果,如图16-16所示。

图16-15 A7单元格返回结果

图16-16 A8单元格返回结果

STEP04:选中A9单元格,在编辑栏中输入公式“=HLOOKUP(“Future Cola”,A1:C4,4)”,用于在首行查找Future Cola,并返回同列中第4行的值,输入完成后按“Enter”键返回计算结果,如图16-17所示。

STEP05:选中A10单元格,在编辑栏中输入公式“=HLOOKUP(2,{1,2,3;”a”,”b”,”c”;”d”,”e”,”f”},2,TRUE)”,用于在数组常量的第1行中查找3,并返回同列中第2行的值,输入完成后按“Enter”键返回计算结果,如图16-18所示。

图16-17 A9单元格返回结果

图16-18 A10单元格返回结果