我正在尝试使用错误检查参数。我想使用两个单元格(在本例中为 H19 和 Q19)的值来确定通过或失败参数。问题是,与 H19 相比,两个值可能最终得出单元格 Q19(“A40”或“A41”)的通过结论。
这是一个仅在单元格“Q19”中具有“A40”值的工作函数:
`=IF(ISNUMBER(VALUE(LEFT(A19,2))),IF(AND(LEFT(B19,1)="A",H19<>"oor",Q19<>"A40"),"Fail",IF(AND(LEFT(B19,1)<>"a",H19<>"OOR",Q19<>"A40"),"Fail",IF(H19="OOR",IF(LEFT(Q19,1)="A","Fail","Pass"),IF(LEFT(Q19,1)<>"A","Fail","Pass")))),"")`
我想扩展它以包含单元格“Q19”中的“A40”或“A41”的新参数,类似于此:
`=IF(ISNUMBER(VALUE(LEFT(A19,2))),IF(AND(LEFT(B19,1)="A",H19<>"oor",Q19<>"A40"),"Fail",IF(AND(LEFT(B19,1)<>"a",H19<>"OOR",Q19<>"A40"),"Fail",IF(AND(LEFT(B19,1)="A",H19<>"oor",Q19<>"A41"),"Fail",IF(AND(LEFT(B19,1)<>"a",H19<>"OOR",Q19<>"A41"),"Fail",IF(H19="OOR",IF(LEFT(Q19,1)="A","Fail","Pass"),IF(LEFT(Q19,1)<>"A","Fail","Pass")))))),"")`
以下是电子表格的屏幕截图,希望能稍微解释一下:
答案1
(请参阅下面的修订)
这就是您想要实现的目标吗?
=IF(ISNUMBER(VALUE(LEFT(A19,2))),IF(AND(UPPER(LEFT(B19,1))="A",UPPER(H19)="OOR",OR(UPPER(Q19)="A40",UPPER(Q19)="A41")),"Pass","Fail"),"")
编辑
根据评论中的讨论,@Bandersnatch 提供的公式应该可以满足您的要求:
=IF(ISNUMBER(VALUE(LEFT(A19,2))),IF(AND(LEFT(B19,1)="A",H19<>"oor",OR(Q19="A40",Q19="A41")),"Pass","Fail"),"")
观察:
(点击图片可查看完整分辨率)
请注意验证:
- 的前两个字符
A19
必须是数字(例如12ABC
) - 单元格的第一个字符
B19
必须是A
(例如A12
) H19
必须是除OOR
(不区分大小写)之外的任何内容Q19
必须是A40
或A41
(不区分大小写)