https://zhidao.baidu.com/question/177265501.html?qbl=relate_question_0&word=%3DVLOOKUP%28B10%2CSheet2%21D:G%2C4%2C1

首先,在用vlookup函数前,sheet2的引用列应该先按升序排好。
最后一个参数一般设为false,就是大致引用。否则如果有重复数据,例如用人名引用,但有同名时就会出错,显示最后一个,如果没检索到相关数据,则会显示上一个记录。
至于用false时显示#N/a,那是因为没有检索到相关数据,这是可能发生并无法避免的,可以使用if函数屏蔽这个错误信息,例如:

=if(VLOOKUP(A1,Sheet2!$A$1:$D$15,4,false)="#N/A","",VLOOKUP(A1,Sheet2!$A$1:$D$15,4,false))

vlookup函数要求:如果最后一个参数是TRUE,则要求首列即 Sheet2!A 列必须是升序排序

=VLOOKUP(B10,Sheet2!D:G,4,1)

VLOOKUP函数的用法-LMLPHP

一、关于该公式的解释
left(D2,4)-------取D2单元格左侧4个字符

=VLOOKUP(LEFT(D2,4),Sheet2!C:D,2,FALSE)

=VLOOKUP(LEFT(D2,4),Sheet2!C:D,2,0)

vlookup函数原型
=vlookup(参数1,参数2,参数3,参数4)
参数1:查找目标,left(D2,4)------要查找D2单元格左侧4个字符
参数2:查找区域,Sheet2!C:D------在Sheet2的C:D列区域进行查找
参数3:返回查找区域的第几列的数据,2-----C:D两列的第二列,也就是D列的数据。
参数4:匹配状态,false表示精确匹配;0等同于FALSE。

Lookup_value为需要在数据表第一列中进行查找的数值。Lookup_value 可以为数值、引用或文本字符串。当vlookup函数第一参数省略查找值时,表示用0查找。

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!;如果 col_index_num 大于 table_array 的列数,函数 VLOOKUP 返回错误值#REF!。

Range_lookup为一逻辑值,指明函数 VLOOKUP 查找时是精确匹配,还是近似匹配。如果为FALSE或0 ,则返回精确匹配,如果找不到,则返回错误值 #N/A。如果 range_lookup 为TRUE或1,函数 VLOOKUP 将查找近似匹配值,也就是说,如果找不到精确匹配值,则返回小于 lookup_value 的最大数值。如果range_lookup 省略,则默认为精确匹配

05-11 11:08