Excel竖直查找:VLOOKUP函数实例图解

VLOOKUP函数用于在表格数组的首列查找指定的值,并由此返回表格数组当前行中其他列的值,VLOOKUP中的V表示垂直方向。当比较值位于需要查找的数据左边的一列时,可以使用VLOOKUP而不是HLOOKUP。其语法如下:


VLOOKUP(lookup_value,table_array,col_index_num,range_lookup)

其中,lookup_value参数为需要在表格数组第1列中查找的数值。lookup_value可以为数值或引用。table_array参数为两列或多列数据。col_index_num参数为table_array中待返回的匹配值的列序号。range_lookup参数为逻辑值,指定希望VLOOKUP查找精确的匹配值还是近似匹配值。下面通过实例详细讲解该函数的使用方法与技巧。

打开“VLOOKUP.xlsx”工作簿,切换至“Sheet1”工作表,本例中的原始数据如图16-19所示。要求根据工作表中的数据内容,实现竖直查找。具体的操作步骤如下。

STEP01:选中B10单元格,在编辑栏中输入公式“=VLOOKUP(A10,$A$2:$C$6,2,FALSE)”,用于在A2:C6单元格区域中根据A10单元格中输入的姓名查找对应的职务,输入完成后按“Enter”键返回计算结果,如图16-20所示。

图16-19 原始数据

图16-20 查找职务

STEP02:选中C10单元格,在编辑栏中输入公式“=VLOOKUP(A10,$A$2:$C$6,3,FALSE)”,用于在A2:C6单元格区域中根据A10单元格中输入的姓名查找对应的出生日期,输入完成后按“Enter”键返回计算结果,如图16-21所示。

STEP03:在A10单元格中输入一个员工姓名,例如“李靖”,在B10和C10单元格中就会显示出相应的结果,如图16-22所示。

图16-21 查找出生日期

图16-22 输入员工姓名

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单元格返回结果

Excel MATCH函数数组元素查找

MATCH函数用于返回在指定方式下与指定数值匹配的数组中元素的相应位置。如果需要找出匹配元素的位置而不是匹配元素本身,则应该使用MATCH函数而不是LOOKUP函数。其语法如下:


MATCH(lookup_value,lookup_array,match_type)

其中,lookup_value参数为需要在数据表中查找的数值。例如,如果要在电话簿中查找某人的电话号码,则应该将姓名作为查找值,但实际上需要的是电话号码。lookup_array参数为可能包含所要查找的数值的连续单元格区域,应为数组或数组引用。match_type参数为数字-1、0或1,指明如何在lookup_array中查找lookup_value。

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

打开“MATCH函数.xlsx”工作簿,切换至“Sheet1”工作表,本例中的原始数据如图16-9所示。要求根据工作表中的数据内容,查找在指定方式下与指定数值匹配的数组中元素的相应位置。具体的操作步骤如下。

STEP01:选中A7单元格,在编辑栏中输入公式“=MATCH(1.3,B2:B5,1)”,然后按“Enter”键返回计算结果。由于此处无正确的匹配,所以返回B2:B5数据区域中最接近的下一个值(1.2)的位置,结果如图16-10所示。

图16-9 原始数据

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

STEP02:选中A8单元格,在编辑栏中输入公式“=MATCH(1.7,B2:B5,0)”,用于返回B2:B5数据区域中1.7的位置,输入完成后按“Enter”键返回计算结果,如图16-11所示。

STEP03:选中A9单元格,在编辑栏中输入公式“=MATCH(1.7,B2:B5,-1)”,然后按“Enter”键返回计算结果,由于B2:B5数据区域不是按降序排列,所以返回错误值“#N/A”,如图16-12所示。

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

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

Excel 应用LOOKUP函数查找数据的两种形式

LOOKUP函数用于从单行或单列区域或者从一个数组返回值。LOOKUP函数具有两种语法形式:向量形式和数组形式。

向量形式

向量是只含一行或一列的区域。LOOKUP的向量形式在单行区域或单列区域(称为“向量”)中查找值,然后返回第2个单行区域或单列区域中相同位置的值。其语法如下:


LOOKUP(lookup_value,lookup_vector,result_vector)

其中,lookup_value参数为LOOKUP函数在第1个向量中搜索的值。lookup_value可以是数字、文本、逻辑值、名称或对值的引用。lookup_vector参数为只包含一行或一列的区域。lookup_vector中的值可以是文本、数字或逻辑值。result_vector参数为只包含一行或一列的区域。它必须与lookup_vector大小相同。

注意:lookup_vector中的值必须以升序顺序放置:…,-2,-1,0,1,2,…;A-Z;FALSE,TRUE,否则,LOOKUP可能无法提供正确的值。大写文本和小写文本是等同的。下面通过实例详细讲解该函数的使用方法与技巧。

打开“LOOKUP函数.xlsx”工作簿,切换至“Sheet1”工作表,本例中的原始数据如图16-1所示。要求根据该工作表中的内容,从单行或单列区域或者从一个数组查找数据。具体的操作步骤如下。

STEP01:选中A8单元格,在编辑栏中输入公式“=LOOKUP(13,A2:A6,B2:B6)”,用于在A列中查找13,然后返回B列中同一行内的值(兰花厅),输入完成后按“Enter”键返回计算结果,如图16-2所示。

图16-1 原始数据

图16-2 返回结果(兰花厅)

STEP02:选中A9单元格,在编辑栏中输入公式“=LOOKUP(18,A2:A6,B2:B6)”,用于在A列中查找18,与接近它的最小值17匹配,然后返回B列中同一行内的值(翠竹轩),输入完成后按“Enter”键返回计算结果,如图16-3所示。

STEP03:选中A10单元格,在编辑栏中输入公式“=LOOKUP(22,A2:A6,B2:B6)”,用于在A列中查找22,与接近它的最小值21匹配,然后返回B列中同一行内的值(紫云斋),输入完成后按“Enter”键返回计算结果,如图16-4所示。

图16-3 返回结果(翠竹轩)

图16-4 返回结果(紫云斋)

STEP04:选中A11单元格,在编辑栏中输入公式“=LOOKUP(0,A2:A6,B2:B6)”,用于在A列中查找0,并返回错误值“#N/A”,0小于lookup_vector A2:A7中的最小值,所以工作表中最终得出的计算结果如图16-5所示。

数组形式

LOOKUP的数组形式在数组的第1行或第1列中查找指定的值,并返回数组最后一行或最后一列内同一位置的值。当要匹配的值位于数组的第1行或第1列中时,使用LOOKUP的这种形式。当要指定列或行的位置时,则须使用LOOKUP的另一种形式。

说明:一般情况下,最好使用HLOOKUP或VLOOKUP函数而不是LOOKUP的数组形式。因为LOOKUP的这种形式是为了与其他电子表格程序兼容而提供的。

LOOKUP的数组形式语法如下:


LOOKUP(lookup_value,array)

其中,lookup_value参数为LOOKUP在数组中搜索的值。下面通过实例详细讲解该函数的使用方法与技巧。

打开“LOOKUP函数.xlsx”工作簿,切换至“Sheet2”工作表,本例中的原始数据如图16-6所示。要求根据该工作表中的内容,在数组的第1行或第1列中查找指定的值,并返回数组最后一行或最后一列内同一位置的值。具体的操作步骤如下。

STEP01:选中A2单元格,在编辑栏中输入公式“=LOOKUP(“B”,{“A”,”B”,”C”,”D”;5,6,7,8})”,用于在数组的第1行中查找“B”,查找小于或等于它(“B”)的最大值,然后返回最后一行中同一列内的值,输入完成后按“Enter”键返回计算结果,如图16-7所示。

STEP02:选中A3单元格,在编辑栏中输入公式“=LOOKUP(“apple”,{“A”,3;”B”,4;”C”,5})”,用于在数组的第1行中查找“apple”,查找小于或等于它(“A”)的最大值,然后返回最后一列中同一行内的值,输入完成后按“Enter”键返回计算结果,如图16-8所示。

图16-5 计算结果

图16-6 原始数据

图16-7 A2单元格计算结果

A3单元格计算结果

图16-8 A3单元格计算结果