记录超过3列的最新值

时间:2017-03-15 18:26:56

标签: excel excel-formula

我想在excel中创建一个只接受四个不同列(第1天到第4列)的最新值的函数。直到第3天它才能正确记录,但是第四天没有任何事情发生。即使每天有新值,总数仍会记录最新的第3天值。这是我的功能

=IF(AND(E3=I3,I3=M3,M3=Q3),Q3,
IF(Q3="Passed",Q3,
IF(M3="Passed",M3,
IF(I3="Passed",I3,
IF(E3="Passed",E3,
IF(Q3="Failed",Q3,
IF(M3="Failed",M3,
IF(I3="Failed",I3,
IF(E3="Failed",E3,
IF(Q3="No Run",Q3,
IF(M3="No Run",M3,
IF(I3="No Run",I3,
IF(E3="No Run",E3,"N/A")))))))))))))

1 个答案:

答案 0 :(得分:2)

您的公式对我来说似乎没问题,但可以简化为:

=IF(OR(E3="Passed",I3="Passed",M3="Passed",Q3="Passed"),"Passed",
 IF(OR(E3="Failed",I3="Failed",M3="Failed",Q3="Failed"),"Failed",
 IF(OR(E3="No Run",I3="No Run",M3="No Run",Q3="No Run"),"No Run",
 "N/A")))

(简化的唯一问题是,如果所有单元格都为空,它将返回"N/A"而不是0。如果这是一个问题,您可以添加额外的IF(AND(E3=I3,I3=M3,M3=Q3),Q3条件在它的前面再次。)

如果你的问题是你想要取Q3的值,如果它是非空白,否则取值为M3,如果它是非空白,否则取值为I3,如果它是非空白,否则如果它是非空白,则取E3的值,否则使用" N / A",那么你的公式应为

=IF(Q3<>"",Q3,IF(M3<>"",M3,IF(I3<>"",I3,IF(E3<>"",E3,"N/A"))))