admin 管理员组文章数量: 887021
2024年2月29日发(作者:java 教程百度网盘)
vlookup函数引用失败有哪些原因
A表中的确有的一个数据,但在B表中使用VLOOKUP函数却无法引用过来,B表的引用单元格中显示#N//A,是什么原因呢?
VLOOKUP(lookup_value,table_array,col_index_num,range_lookup)
Lookup_value 为需要在Table_array第一列中查找的数值。
可以为数值、引用或文本字符串。需要注意的是类型必须与table_array第一列的类型一致。
查找文本时,文本不区分大小写;可以使用通配符“*”、“?”。
Table_array 为需要在其中查找数据的数据表。
可以使用对区域或区域名称的引用、常数数组、计算后的内存数组。
对区域引用时,可以引用整列,excel会自动判断使用区域。
该参数的第一列必须包含查找的内容,其它列包含需返回的内容;返回内容的列序号由下个参数指定。
Col_index_num 为table_array中待返回的匹配值的列序号。
如为1时,返回table_array第一列中的数值;为2,返回table_array第二列中的数值,以此类推。
如果col_index_num小于1,函数 VLOOKUP 返回错误值值 #VALUE!;
如果col_index_num大于table_array的列数,函数 VLOOKUP 返回错误值 #REF!。
Range_lookup 为一逻辑值,指明函数VLOOKUP返回时是精确匹配还是近似匹配。
如果为TRUE或省略,则返回近似匹配值,也就是说,如果找不到精确匹配值,则返回小于lookup_value的最大数值;
近似匹配查询一般用于数值的查询,table_array的第一列必须按升序排列;否则不能返回正确的结果。
如果range_value为FALSE(或0),函数VLOOKUP将返回精确匹配值。
此时,table_array不必进行排序。如果找不到,则返回错误值#N/A;可isna检测错误后使用if判断去除错误信息。
VLOOKUP 函数通过使用与左侧列的匹配来选取行号和列号,从一个列的范围内来取回值,从而在该行内选取列。
VLOOKUP(search-value, cell-range, column, [exact-match])
search-value:在范围的左侧列内要查找的值,从而选择一行。
cell-range:含有您的数据的单元格范围。左侧的列包含要搜索的数据,其余行包含要取回的值。
column:指定要从中取回值的单元格的相对列号。范围左侧的列为列 1。
exact-match:可选布尔值,确定是否需要准确值:
TRUE、1 或省略,即如果没有准确配置,则选择小于搜索值的最顶端一行的值。
FALSE 或 0 则当没有准确配置时返回错误。
示例
假设表格如下:
VLOOKUP(20, B2:E6, 2) 返回 E。
VLOOKUP(21, B2:E6, 2) 返回 E。
VLOOKUP("M", C2:E6, 2) 返回 dolor。
VLOOKUP("blandit", D2:E6, 2) 返回 5。
VLOOKUP(21, B2:E6, 2, FALSE) 返回一个错误,因为左列内没有值能准确匹配 21。
Excel查询函数中,Lookup和Vlookup有哪些区别?它们在应用中应该如何把握?请看本文讲解。
★Lookup——数与行列比
Lookup的工作职责是什么呢?用一个数与一行或一列数据依次进行比较,发现匹配的数值后,将另一组数据中对应的数值提取出来。
·工资税率表:用数值比较
根据不同的工资进行不同的税率计算是一个常见的应用。我们来看这张“工资税率查询”表(见图1)。现在要在右侧根据“收入”(F列),直接得到对应的“税率”(G列)。在计算第1个“税率”时,输入函数公式“=LOOKUP(F4,$B$3:$B$8,$D$3:$D$8)”,回车,便可得到“36.00%”。
这个结果是怎么来的?用F4中的第1个收入数“$123,409”,与左侧表的“收入最低”各档数据(“$B$3:$B$8”)进行对比,虽然“$123,409”在“收入最低”各档数中没有完全一致的数据与之匹配,但是会与其中小于它的最大数“$58,501”相匹配。这样,同一行对应的“36.00%”就提取出来了。
·图书销售表:用文本比较
Lookup函数的对比数还可以是文本。在这张图书销售查询表中(见图2),用下表输入的“编号”(A15单元格)文本当作查询数,与上表的“编号”一列($A$3:$A$11)进行对比,查询到了匹配的文本后,将“教材名称”一列($B$3:$B$11)对应的数据提取出来。公式是“=LOOKUP(A15,$A$3:$A$11,$B$3:$B$11)”。
★Vlookup——数与表格比
Lookup有一个大哥——Vlookup函数。两兄弟有很多相似之处,但大哥本领更大。Vlookup用对
比数与一个“表”进行对比,而不是Lookup函数的某1列或1行,并且Vlookup可以选择采用精确查询或是模糊查询方式,而Lookup只有模糊查询。
·模糊匹配
用Vlookup函数进行模糊查询时,几乎与Lookup的作用完全一致。我们用Vlookup函数来提取第1个例子中的工资税率结果。函数公式为“=VLOOKUP(F4,$B$3:$D$8,3,TRUE)”。
在这个函数中,用第1个收入“$123,409”(F4单元格)当作对比数,用它与左侧表(“$B$3:$D$8”)的第1列数进行对比,虽然“$123,409”在“收入最低”各档数中没有完全一致的数据与之匹配,但是函数的最后一个参数是“TURE”(“TURE”就是模糊查询),所以它会与其中小于它的最大数“$58,501”相匹配。并将表中第3列(函数的第3个参数为“3”)对应的数据提取出来,所以结果同样是“36.00%”。
·订单明细表:精确匹配
有时候,我们需要精益求精。在下面这个“订单明细表”(见图3)中,最后一列“货运费用”中的数据要通过“交货方式”从左侧“配送公司收费表”中进行匹配查询。这是一个典型的精确查询的例子,计算第1个数据的函数公式是“=VLOOKUP(H3,$B$2:$D$6,3,FALSE)”。
小提示:
把最后一个参数从“TRUE”变更成“FLASE”,就是精确匹配。而精确查询,就是查询数要与查询表第1列中的数据完全一致才能匹配提取,否则结果返回错误值“#N/A”。
版权声明:本文标题:vlookup函数引用失败有哪些原因 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.freenas.com.cn/jishu/1709139564h538725.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论