=IF(Q2>P2 +30,"Late","")
如果单元格Q2为空,我将如何获得返回值“打开”,如果Q2小于P2,我将如何获得“OnTime”。
谢谢
答案 0 :(得分:1)
您只需要嵌套一些If
语句。
你所拥有的是(伪代码):
If Q2 > P2 + 30 Then "Late"
Else If Q2 <= P2 + 30 Then "On Time"
Else If Q2 = Empty Then "Open"
If
语句,无论是公式还是VBA /代码,都包含:
If(expression, true_part, false_part)
您可以通过在If
(或您可能需要的任何其他公式)中添加另一个false_part
语句来嵌套它们。
例如,您可以通过以下方式模仿ABS
函数:
If(A1>=0,A1,-1*A1)
因此,在上面的示例中,您可以看到我们如何在false_part
中使用等式或公式来进行一些额外的转换。在您的情况下,公式将只是要评估的另一个If
语句。类似的东西:
If(Q2>P2+30,"Late",If(Q2<=P2+30,"On Time",If(Q2="","Open","")))
为简单起见,我可能会这样做:
If(Q2="","Open",IF(Q2<=P2+30,"On Time","Late"))
这样,您首先要检查Q2是否为空/非空,并且仅针对Q2 / P2 + 30进行一次测试。它只是一个较短的等式,但它做同样的事情。