即使第一行下面有值V LOOKUP返回0

时间:2018-03-26 16:29:41

标签: excel vlookup

我有两张不同的excel表。在一张excel表中,我只有另一部分的“部件号”,我有部件号和工厂。我试图在第一张excel表中获得工厂详细信息。以下是屏幕截图供您参考。

enter image description here

二次 enter image description here

预期结果 enter image description here

我知道第一行是零,因此我在所有行中都为零。有没有办法,如果vlookup找到一个与之关联的空白单元格的匹配值,请向下看列表,直到找到匹配的值,在该单元格旁边有一些东西?我尝试了以下功能但没有成功。

=VLOOKUP(A2,IF(ISBLANK([Book2.xlsx]Sheet1!$BL:$BL),0,[Book2.xlsx]Sheet1!$A:$BL,29,0)

我们将非常感谢您解决此问题的任何帮助!

2 个答案:

答案 0 :(得分:1)

假设工作表1中A1的以下数据和材料数据已分组,但不一定排序:

Material Part   
166 
166 
166 
166     XYZ
166 
166 
167 
167 
167     ABC
167 
167 
167 
167 
167 

从A1获取Sheet2中的以下结果:

Material    Part No.
167         ABC
166         XYZ

B2中的公式:

=INDEX(OFFSET(Sheet1!$A$2,MATCH(A2,Sheet1!A:A,0)-2,1,COUNTIF(Sheet1!A:A,A2)),MATCH(FALSE,ISBLANK(OFFSET(Sheet1!$A$2,MATCH(A2,Sheet1!A:A,0)-2,1,COUNTIF(Sheet1!A:A,A2))),0))

上面的注释是一个数组公式,要输入 ctrl + shift + 输入

答案 1 :(得分:1)

尝试,

=INDEX(B:B, AGGREGATE(15, 6, ROW($2:$15)/((A$2:A$15=E2)*(B$2:B$15<>"")), 1))
'another workbook's columns A and AC
=INDEX([Book2.xlsx]Sheet1!AC:AC, AGGREGATE(15, 6, ROW($2:$15)/(([Book2.xlsx]Sheet1!A$2:A$15=a2)*([Book2.xlsx]Sheet1!AC$2:AC$15<>"")), 1))

Sample¹:

enter image description here

¹感谢Nitesh Halai提供无需从图像重新输入的样本数据。