使用 if 和 vlookup 返回值

使用 if 和 vlookup 返回值

我正在尝试创建一个可以帮助我维护列表的公式。

我在一张图纸上记录了图纸编号和修订版本。我需要将其带到主图纸上,记录主图纸上的每个图纸编号。

如果第二张纸是这样的

Rev    Drawing number    
,      xx_B_200_50
1      xx_B_200_51

我希望公式在主页上像这样返回

Rev    Drawing number
00     xx_B_200_50
01     xx_B_200_51

我一直在尝试这些,但不知道如何达到目标!!

=VLOOKUP(G19;'secondsheet'!$I:$K;3;FALSE);

谢谢!

答案1

据我了解,你想使用图号在另一张表上查找相应的值。

在您的数据样本中,一行有一个逗号,另一行有数字 1。您似乎想将其返回0001

我不太明白逗号如何转换为的逻辑00。你可能需要再解释一下。

为了通过查找图纸编号返回“Rev”列,在这种情况下您不能使用 Vlookup,因为 Vlookup 只能返回找到该值的列右侧的值。

假设两张工作表中的“Rev”位于 A 列,而“Drawing number”位于 B 列,则可以使用 Index/Match 组合来返回单元格值。

=Index(Sheet2!$A:$A,Match(Sheet1!B1,Sheet2!$b:$b,0))

该公式将返回工作表 2 的 A 列单元格的值,其中工作表 2 的 B 列具有与工作表 1 的 B1 相同的值。

您可以将此公式包装在公式中以进行错误检查或格式化带有前导零的数字。您还可以将其包装在公式中以00在结果为逗号时返回。

此外,由于您似乎使用的是欧洲设置,因此您需要将上述公式中的所有逗号替换为分号。如下所示:

=Index(Sheet2!$A:$A;Match(Sheet1!B1;Sheet2!$b:$b;0))

如果这没有帮助,请发布更多信息、示例文件和屏幕截图。帮助我们帮助您。

发布示例文件后进行编辑。

您正在尝试使用具有多个条件的公式,但是您没有正确应用 OR。

OR() 函数不能用于连接两个 IF 语句。IF() 的语法为IF(condition, do when true, do when false)。因此,您要用“Or”覆盖的内容需要进入位do when false。您可能需要将公式更改为:

=IF(INDEX(Sheet2!$A:$A,MATCH($B:$B,Sheet2!$B:$B,0))=".","00",IF(INDEX(Sheet2!$A:$A,MATCH($B:$B,Sheet2!$B:$B,0))="1","01","other"))

您可以other用另一个嵌套的 IF 替换公式中的位,以包含另一个“或”条件。

相关内容