嵌套的IF语句validation第1部分,但不是有条件的第2部分

我正在做一个IF语句,进行如下检查:

1)检查VDA报告中是否存在价值

  • 如果FALSE,然后移动到2
  • 如果为TRUE,则显示“是”

2)检查列H中相邻值的第一个字母是否为“V”

  • 如果为TRUE,则显示“是”
  • 如果FALSE,则进入3

3)显示空白结果


但是每当它在1)处找不到一个值的时候,就不要继续在2)处进行检查,而是一路跳到3)。 有什么理由发生这种情况?

代码如下:

=IFERROR( IF(VLOOKUP(CONCATENATE("EMEA\",H:H),'VDA Report'!A:B,1,FALSE)<>"","Yes", IF(LEFT(H:H,1)="V","Yes","")) ,"") 

那么,你正在使用一个数组公式,即使你正确使用它,我不认为这就是你想要的。

如果您使用公式选项卡下的“评估公式”,并将其用于不工作的地方,则应该看到它始终只检查H:H中的第一个单元格。

我不完全确定你在做什么,但我会build议这样的事情:

 =IF(OR(IFERROR(VLOOKUP("EMEA\"&H1,'VDA Report'!A:B,2,0),"")<>"",LEFT(H1)="V"),"Yes","") 

我将vlookup索引更改为2,因为您使用范围A:B,如果使用索引1,则使用两列是毫无意义的。我假定您正在检查返回值(值在VDA报告的B列),而不是查找值。

这只会检查H1,所以你可以拖动这个公式,它会很好地适应。

如果您只是检查查找值是否在列A(与列B无关),那么您可以简单地使用:

 =IF(OR(ISNUMBER(MATCH("EMEA\"&H1,'VDA Report'!A:A,0)),LEFT(H1)="V"),"Yes","") 

ISNUMBER(MATCH("EMEA\"&H1,'VDA Report'!A:A,0))如果"EMEA\"&H1'VDA Report'!A:A ISNUMBER(MATCH("EMEA\"&H1,'VDA Report'!A:A,0))返回true 'VDA Report'!A:A

LEFT(H1)LEFT(H1,1)同义。