搜索
您的当前位置:首页正文

HLOOKUP及VLOOKUP函数使用

来源:筏尚旅游网
HLOOKUP

一月1020304050二月8090100110120寻找月份:需要挑出的行:结果是:功能

在表格或数值数组的首列查找指定的数值,并由此返回表格或数组当前行中指定列处的数值。当比较值表首列时,可以使用函数 VLOOKUP 代替函数 HLOOKUP。在 VLOOKUP 中的 V 代表垂直。语法

VLOOKUP(lookup_value,table_array,col_index_num,range_lookup)

三月9769455177三月445 =HLOOKUP(F10,D3:F10,F11,FALSE)行1行2行3行4行5行6

行数字并非必需的.

它们只是便于在示例中使用.

Lookup_value   为需要在数组第一列中查找的数值。Lookup_value 可以为数值、引用或文本字符串。Table_array   为需要在其中查找数据的数据表。可以使用对区域或区域名称的引用,据库或数据清单。

如果 range_lookup 为 TRUE,则 table_array 的第一列中的数值必须按升序排列:„1、0、1、2、„、-Z、FALSE、TRUE;否则,函数 VLOOKUP 不能返回正确的数值。如果range_lookup 为 FALSE,table_array 不必进行排序。

通过在“数据”菜单中的“排序”中选择“升序”,可将数值按升序排列。Table_array 的第一列中的数值可以为文本、数字或逻辑值。文本不区分大小写。

Col_index_num   为 table_array 中待返回的匹配值的列序号。Col_index_num 为 1

回 table_array 第一列中的数值;col_index_num 为 2,返回 table_array 第二列中的数值,以此类推。如果 col_index_num 小于 1,函数 VLOOKUP 返回错误值值 #VALUE!;如果Range_lookup   为一逻辑值,指明函数 VLOOKUP 返回时是精确匹配还是近似匹配。如TRUE 或省略,则返回近似匹配值,也就是说,如果找不到精确匹配值,则返回小于

lookup_value 的最大数值;如果 range_value 为 FALSE,函数 VLOOKUP 将返回精确匹配值。如果找不到,则返回错误值 #N/A。

格式

没有专门的格式

示例 1

下面示例以月份和姓名为基础查找值.使用函数=HLOOKUP()查找月份.当向下查找相邻的姓名时问题出现了.这个问题可以使用函数=MATCH()解决.

函数=MATCH()彻底搜索姓名列表并找到我们需要的姓名在列表中的位置。然而, 因为姓名列表并不像LOOKUP范围那样广泛,

函数=MATCH() 等到的结果与我们实际需要的结果少1,因此要额外添加数字1补充。

在函数=HLOOKUP() 中使用函数 =MATCH() 得到的数字在月份列向下找到单元格条目。函数=HLOOKUP() 在结尾处使用FALSE为的是月份列不用按升序排列。

一月1020304050二月8090100110120查找的月份:查找的姓名:结果是:三月9769455177二月程龙100程香宙刘冰程龙程坤张三 =HLOOKUP(F51,D44:F51,MATCH(F52,C45:C49,0)+1,F

示例 2

这个示例使用函数=HLOOKUP() 查找不同小车生产厂商不同配件的价值。函数=HLOOKUP()在B列不同厂商标题.

找到厂商后, 函数 =HLOOKUP() 又使用=MATCH()函数查找下一列C内配件列表中指定的行。

公式中使用了绝对引用,为的是确保公式复制移动时函数 =HLOOKUP() 和=MATCH()引用的范围不发生变厂商日本丰田奔驰福特奔驰福特福特日本丰田福特配件火花塞变速箱引擎方向盘火花塞刹车片变速箱引擎价值$50$600$1,200$275$70$290$500$1,200 =HLOOKUP(B71,$G$64:$I$69,MATCH(C71,$F$65:$F$69,0)+1,FALSE)

变速箱引擎方向盘火花塞刹车片日本丰田500100025050300福特450120035070290示例 3

下面的示例是一个建材经销商提供的不同采购数量的折扣率价格表中显示了砖,木材和玻璃的单价.

折扣表提供了不同产品不同采购数量的折扣率.采购表是采购预算.

所有的预算结果显示在采购表中.产品名称列表在C列.

单价是从价格表中获得的.

FALSE选项表示产品名称在价格表中没有排序整理.

使用FALSE强迫搜索精确匹配. 如果没有找到,则函数显示错误.

=HLOOKUP(C127,E111:G112,2,FALSE)

折扣是从折扣表中获得的

如果采购数量与折扣表中某个值不匹配,函数 =HLOOKUP将向下查找正确的匹配折扣.TRUE选项表示采购数量在折扣表中经过了升序排列整理.

使用TRUE允许模糊匹配.如果采购数量在折扣表中没有找到匹配的值,则它下面较小的值将被使用.比如采购数量为125将向下与100匹配,并且使用100对应列的折扣率.

#NAME?

价格表木材£1折扣表1砖木材玻璃采购表单价£2£1£3£2£1£30%0%0%砖£2玻璃£31006%3%12%3008%5%15%项目砖木材玻璃砖木材玻璃单价折扣

示例4

采购数量12520015022550500折扣6%3%12%6%0%15%合计£235£194£396£423£50£1,275 =HLOOKUP(C114,$E$98:$G$99,2,FALSE)

=HLOOKUP(D114,$E$102:$G$105,MATCH(C114,$D$103:$D$105,0)+1,TRUE)

密度0.4570.5250.6160.6750.7460.8350.9461.091.29粘度3.553.252.932.752.572.382.171.951.71温度500400300250200150100500结果2.17公式在 A 列中查找 1,并从相同行的 B 列中返回值 (2.17)在 A 列中查找 1,并从相同行的 C 列中返回值 (100)在 A 列中查找0.746。因为 A 列中没有精确地匹配,所以返回了一个错误值 (#N/A)在 A 列中查找 0.1。因为 0.1 小于 A列的最小值,所以返回了一个错误值(#N/A)在 A 列中查找 2,并从相同行的 B 列中返回值 (1.71)说明(结果)100#N/A#N/A1.71说明

如果函数 VLOOKUP 找不到 lookup_value,且 range_lookup 为 TRUE,则使用小于等

如果 lookup_value 小于 table_array 第一列中的最小数值,函数 VLOOKUP 返回错误值 #N/A。如果函数 VLOOKUP 找不到 lookup_value 且 range_lookup 为 FALSE,函数 VLOOKUP

并非必需的.

是便于在示例中使用.

D3:F10,F11,FALSE)

比较值位于数据

表垂直。

引用或文本字符串。

引用,例如数

列:„、-2、-确的数值。如果

为 1 时,返

rray 第二列中的数值值 #VALUE!;如果配。如果为

则返回小于

P 将返回精确匹配值。

C45:C49,0)+1,FALSE)

用的范围不发生变化。

奔驰60080027545310的值将被使用.

+1,TRUE)

小于等于

回错误值 #N/A。OOKUP 返回错

因篇幅问题不能全部显示,请点此查看更多更全内容

Top