生活知识|vlookup怎么用详细步骤,vlookup匹配出来是#N/A( 二 )


A B C D
1 农产品名称 数量 单价 金额
2 水稻 1000 0.48 480
3 玉米 2000 0.39 780
…………………………………………………
在D2单元格里输入公式:
=C2*B2 ;
在C2单元格里输入公式:
=VLOOKUP(A2, Sheet1!A2:B100, 2, FALSE) 。
如用语言来表述, 就是:在Sheet1表A2:B100区域的第一列查找Sheet2表单元格A2的值, 查到后, 返回这一行第2列的值 。
这样, 当Sheet2表A2单元格里输入的名称改变后, C2里的单价就会自动跟着变化 。 当然, 如Sheet1中的单价值发生变化, Sheet2中相应的数值也会跟着变化 。
其他单元格的公式, 可采用填充的办法写入 。
VLOOKUP函数使用注意事项
说到VLOOKUP函数, 相信大家都会使用, 而且都使用得很熟练了 。 不过, 有几个细节问题, 大家在使用时还是留心一下的好 。
一.VLOOKUP的语法
VLOOKUP函数的完整语法是这样的:
VLOOKUP(lookup_value,table_array,col_index_num,range_lookup)
1.括号里有四个参数, 是必需的 。 最后一个参数range_lookup是个逻辑值, 我们常常输入一个0字, 或者False;其实也可以输入一个1字, 或者true 。 两者有什么区别呢?前者表示的是完整寻找, 找不到就传回错误值#N/A;后者先是找一模一样的, 找不到再去找很接近的值, 还找不到也只好传回错误值#N/A 。 这对我们其实也没有什么实际意义, 只是满足好奇而已, 有兴趣的朋友可以去体验体验 。
2.Lookup_value是一个很重要的参数, 它可以是数值、文字字符串、或参照地址 。 我们常常用的是参照地址 。 用这个参数时, 有两点要特别提醒:
A)参照地址的单元格格式类别与去搜寻的单元格格式的类别要一致, 否则的话有时明明看到有资料, 就是抓不过来 。 特别是参照地址的值是数字时, 最为明显, 若搜寻的单元格格式类别为文字, 虽然看起来都是123, 但是就是抓不出东西来的 。
而且格式类别在未输入数据时就要先确定好, 如果数据都输入进去了, 发现格式不符, 已为时已晚, 若还想去抓, 则需重新输入 。
B)第二点提醒的, 是使用时一个方便实用的小技巧, 相信不少人早就知道了的 。 我们在使用参照地址时, 有时需要将lookup_value的值固定在一个格子内, 而又要使用下拉方式(或复制)将函数添加到新的单元格中去, 这里就要用到“$”这个符号了, 这是一个起固定作用的符号 。 比如说我始终想以D5格式来抓数据, 则可以把D5弄成这样:$D$5, 则不论你如何拉、复制, 函数始终都会以D5的值来抓数据 。
3.Table_array是搜寻的范围, col_index_num是范围内的栏数 。 Col_index_num 不能小于1, 其实等于1也没有什么实际用的 。 如果出现一个这样的错误的值#REF!, 则可能是col_index_num的值超过范围的总字段数 。
二.VLOOKUP的错误值处理 。
我们都知道, 如果找不到数据, 函数总会传回一个这样的错误值#N/A, 这错误值其实也很有用的 。 比方说, 如果我们想这样来作处理:如果找到的话, 就传回相应的值, 如果找不到的话, 我就自动设定它的值等于0, 那函数就可以写成这样:
=if(iserror(vlookup(1,2,3,0))=true,0,vlookup(1,2,3,0))
这句话的意思是这样的:如果VLOOKUP函数返回的值是个错误值的话(找不到数据), 就等于0, 否则, 就等于VLOOKUP函数返回的值(即找到的相应的值) 。
这里面又用了两个函数 。
第一个是iserror函数 。 它的语法是iserror(value), 即判断括号内的值是否为错误值, 如果是, 就等于true, 不是, 就等于false 。
第二个是if函数, 这也是一个常用的函数的, 后面有机会再跟大家详细讲解 。 它的语法是if(条件判断式, 结果1, 结果2) 。 如果条件判断式是对的, 就执行结果1, 否则就执行结果2 。 举个例子:=if(D2=””,”空的”,”有东西”), 意思是如D2这个格子里是空的值, 就显示文字“空的”, 否则, 就显示“有东西” 。 (看起来简单吧?其实编程序, 也就是这样子判断来判断去的 。 )

推荐阅读