If 语句取决于一天中的时间

If statement depending on time of day

我需要使用特定的时间,到目前为止我有这个

=IF(AND(TIME(15,45,0)<=(AW15=$A,$A)),IF(AND(TIME(15,45,0)>=(AW16=$A,$A))

因此,如果在 15:45:00 之前,我需要它等于此逻辑测试 AW15=$A,$A,如果在 15:45:00 之后等于 AW16=$A,$A

希望它有意义并提前致谢。

如果我对你的问题理解正确,你需要将现在的时间与15:45:00进行比较,并据此做出选择。如果是这样,解决方案是:

=IF(TIME(HOUR(NOW()), MINUTE(NOW()), SECOND(NOW())) < TIME(15,45,0),
    AW15=$A,$A, AW16=$A,$A)

这转化为:如果现在的时间在 15:45:00 之前,则执行 AW16=$A,$A 否则执行 AW16=$A,$A

如果要比较特定单元格中的时间,请将 TIME(HOUR(NOW()), MINUTE(NOW()), SECOND(NOW())) 替换为具有时间的单元格,例如:

=IF(A1 < TIME(15,45,0),
    AW15=$A,$A, AW16=$A,$A)

所以听起来您正在尝试编写嵌套的 IF 语句。即IF A为真,THEN IF B也为真THEN return结果1,否则(A为真,B不为真)return结果2,否则(A不为真,B未测试) return 结果 3.

在Excel中,会这样写: =IF(Parameter1=Condition1,IF(Parameter2=Condition2,Result1,Result2),Result3)

将其应用到您的场景中,我认为您的目标是:

=IF(TIME(HOUR(NOW()), MINUTE(NOW()), SECOND(NOW())) < TIME(15,45,0),
    IF(AW15=$A,$A,"Condition1.2"),
    IF(AW16=$A,$A,"Condition2.2"))

请注意,您的陈述未涵盖某些场景,因此我写了 "Condition1.2" 和 "Condition2.2",您可以将其替换为 return 的其他测试或结果。

条件 1.2 是 15:45 之前的时间,但 AW15 不等于 A11

Condition2.2 是时间等于或晚于 15:45,但 AW16 不等于 A13

如果您不想,则不必在这些占位符中放置任何内容,但如果满足其中任何一个条件,则公式将简单地 return "FALSE".

此外,如果您不希望测试时间为 NOW(),那么您将需要引用另一个单元格,该单元格包含一个固定的时间戳,用于处理行的时间。 NOW() 是易变的,这意味着如果您在 15:45 之前保存电子表格,但在 15:45 之后再次打开它,您已经计算的结果将全部改变。