首页 Office&WPS正文

EXCEL公式及函数的高级应用(4)

mydiannao Office&WPS 09-12 2209 0

2.1.2.7  LOOKUP函数、VLOOKUP函数和HLOOKUP函数

1LOOKUP函数

LOOKUP函数的功能是返回向量(单行区域或单列区域)或数组中的数值。函数 LOOKUP 有两种语法形式:向量和数组。函数 LOOKUP 的向量形式是在单行区域或单列区域(向量)中查找数值,然后返回第二个单行区域或单列区域中相同位置的数值;函数 LOOKUP 的数组形式在数组的第一行或第一列查找指定的数值,然后返回数组的最后一行或最后一列中相同位置的数值。

1)向量形式:公式为

= LOOKUP(lookup_value,lookup_vector,result_vector)

式中 lookup_value—函数LOOKUP在第一个向量中所要查找的数值,它可以为数字、文本、逻辑值或包含数值的名称或引用;

lookup_vector—只包含一行或一列的区域lookup_vector 的数值可以为文本、数字或逻辑值;

result_vector—为只包含一行或一列的区域其大小必须与 lookup_vector 相同。

2)数组形式:公式为

= LOOKUP(lookup_value,array)

式中 array—包含文本、数字或逻辑值的单元格区域或数组它的值用于与 lookup_value 进行比较。

例如:LOOKUP(5.2,{4.2,5,7,9,10})=5

注意:lookup_vector的数值必须按升序排列,否则函数LOOKUP不能返回正确的结果。文本不区分大小写。如果函数LOOKUP找不到lookup_value,则查找lookup_vector中小于或等于lookup_value的最大数值。如果lookup_value小于lookup_vector中的最小值,函数LOOKUP返回错误值#N/A

2VLOOKUP函数

VLOOKUP函数的功能是在表格或数值数组的首列查找指定的数值,并由此返回表格或数组当前行中指定列处的数值。公式为

= VLOOKUPlookup_valuetable_arraycol_index_numrange_lookup

式中 lookup_value—需要在数据表第一列中查找的数值,lookup_value 可以为数值、引用或文字串;

table_array—需要在其中查找数据的数据表,可以使用对区域或区域名称的引用,例如数据库或数据清单;

如果range_lookupTRUE,则table_array的第一列中的数值必须按升序排列,否则函数VLOOKUP不能返回正确的数值,如果range_lookupFALSEtable_array不必进行排序。table_array的第一列中的数值可以为文本、数字或逻辑值,且不区分文本的大小写;

col_index_numtable_array中待返回的匹配值的列序号;

col_index_num1时,返回table_array第一列中的数值;col_index_num2时,返回table_array第二列中的数值,以此类推。如果col_index_num小于1,函数VLOOKUP返回错误值#VALUE!;如果col_index_num大于table_array的列数,函数VLOOKUP返回错误值#REF!

range_lookup—逻辑值,指明函数 VLOOKUP 返回时是精确匹配还是近似匹配。

如果其为TRUE或省略,则返回近似匹配值,也就是说,如果找不到精确匹配值,则返回小于lookup_value的最大数值;如果range_valueFALSE,函数VLOOKUP将返回精确匹配值。如果找不到,则返回错误值#N/A

VLOOKUP函数在财务管理与分析中是一个经常用到的函数,因此熟悉它将会带来很大便利。在以后的有关章节中会经常用到它。

例如,假设单元格A1:A4中的数据分别为1308090,单元格B1:B4中的数据分别为400500600700,则有:VLOOKUP(5,A1:B4,2)=400VLOOKUP(30,A1:B4,2)=500VLOOKUP(79,A1:B4,2)=500VLOOKUP(92,A1:B4,2)=700

3HLOOKUP函数

HLOOKUP函数的功能是从表格或数值数组的首行查找指定的数值,并由此返回表格或数组当前列中指定行处的数值。公式为

= (lookup_valuetable_arrayrow_index_numrange_lookup)

式中  row_index_numtable_array中待返回的匹配值的行序号。

row_index_num1时,返回table_array第一行的数值,row_index_num2时,返回table_array第二行的数值,以此类推。如果row_index_num小于1,函数HLOOKUP返回错误值 #VALUE!;如果row_index_num大于table_array的行数,函数HLOOKUP返回错误值#REF!

式中的其他参数含义参阅VLOOKUP函数。

HLOOKUP函数与VLOOKUP函数的区别是:当比较值位于数据表的首行,并且要查找下面给定行中的数据时,使用函数HLOOKUP;当比较值位于要进行数据查找的左边一列时,使用函数VLOOKUPVLOOKUP函数在首列进行检索,先得到的是行号,然后根据col_index_num参数指定的列标返回指定的单元格数值;而HLOOKUP函数在首行进行检索,先得到的是列标,然后根据row_index_num参数指定的行号返回指定的单元格数值。

2.1.2.8  MATCH函数

MATCH函数的功能是返回在指定方式下与指定数值匹配的数组中元素的相应位置。公式为:

= MATCH(lookup_value,lookup_array,match_type)

式中  lookup_value—需要在数据表中查找的数值,可以是数值(数字、文本或逻辑值)或对数字、文本或逻辑值的单元格引用;

lookup_array—可能包含所要查找的数值的连续单元格区域,可以是数组或数组引用;

match_type—数字-101,它指明Excel如何在lookup_array中查找lookup_value

查找方式如下:当match_type-1时,lookup_array必须按降序排列,函数MATCH查找大于或等于lookup_value的最小数值;当match_type0时,lookup_array可以按任何顺序排列,函数MATCH 查找等于lookup_value的第一个数值;当match_type1时,lookup_array必须按升序排列,函数MATCH查找小于或等于lookup_value的最大数值。

例如,MATCH(12,{23,43,12,55},0)=3MATCH(40,{23,43,12,55})=1

本站公告

【企业、公司、工作室、出租屋、家庭】
远程解决:网络异常,路由器配置,打印机设置,驱动安装,局域网文件共享,监控调试,电脑故障等电脑周边问题解决,欢迎咨询!
微信:1633694989