Excel 应用LOOKUP函数查找数据

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

向量形式

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


LOOKUP(lookup_value,lookup_vector,result_vector)

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

注意:lookup_vector中的值必须以升序顺序放置,如“…,-2,-1,0,1,2,…”、“A-Z”、“FALSE,TRUE”;否则,LOOKUP可能无法提供正确的值。大写文本和小写文本是等同的。

【典型案例】从单行或单列区域或者从一个数组查找数据。本例的原始数据如图15-19所示。

步骤1:在A8单元格中输入公式“=LOOKUP(13,A2:A6,B2:B6)”,用于在A列中查找13,然后返回B列中同一行内的值(兰花厅)。

步骤2:在A9单元格中输入公式“=LOOKUP(18,A2:A6,B2:B6)”,用于在A列中查找18,与接近它的最小值17匹配,然后返回B列中同一行内的值(翠竹轩)。

步骤3:在A10单元格中输入公式“=LOOKUP(22,A2:A6,B2:B6)”,用于在A列中查找22,与接近它的最小值21匹配,然后返回B列中同一行内的值(紫云斋)。

步骤4:在A11单元格中输入公式“=LOOKUP(0,A2:A6,B2:B6)”,用于在A列中查找0,并返回错误,因为0小于lookup_vector区域中“A2:A7”中的最小值。计算结果如图15-20所示。

图15-19 原始数据

图15-20 计算结果

数组形式

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

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

LOOKUP的数组形式语法如下。


LOOKUP(lookup_value,array)

其中参数lookup_value为LOOKUP在数组中搜索的值。

【典型案例】在数组的第一行或第一列中查找指定的值,并返回数组最后一行或最后一列内同一位置的值。本例的原始数据如图15-21所示。

步骤1:在A2单元格中输入公式“=LOOKUP(”B”,{“A”,”B”,”C”,”D”;5,6,7,8})”,用于在数组的第一行中查找“B”,查找小于或等于它(“B”)的最大值,然后返回最后一行中同一列内的值。

步骤2:在A3单元格中输入公式“=LOOKUP(”apple”,{“A”,3;”B”,4;”C”,5})”,用于在数组的第一行中查找“apple”,查找小于或等于它(“A”)的最大值,然后返回最后一列中同一行内的值。计算结果如图15-22所示。

图15-21 原始数据

图15-22 计算结果

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单元格计算结果