8

我正在寻找一个公式,它允许我查看一个单元格并检查它是否大于或等于今天的日期并返回一个措辞结果,例如“逾期”。如果为空则返回另一个单词,或者什么都没有。

我尝试将源单元格 ( O10) 中的结果复制到另一个单元格 ( Y10) 并使用 if 语句,但这似乎过于费力 - 必须有一种方法可以从源单元格中读取信息吗?见下文。当单元格为空白时,它也会返回过期:(

=IF(O10>Y10,"OVERDUE","NOT DUE")
4

3 回答 3

15

您可以在要查看OverdueNot due结果的单元格中输入以下公式:

=IF(ISBLANK(O10),"",IF(O10<TODAY(),"Overdue","Not due"))

此公式首先测试源单元格是否为空白。如果是,则结果单元格将填充空字符串。如果源不是空白,则公式会测试源单元格中的日期是否早于当天。如果是,则将值设置为Overdue,否则将其设置为Not due

于 2012-09-07T03:31:48.620 回答
0

我认为这将涵盖 O10 中的任何可能情况:

=IF(ISBLANK(O10),"",IF(O10<TODAY(),IF(TODAY()-O10<>1,CONCATENATE("Due in ",TEXT(TODAY()-O10,"d")," days"),CONCATENATE("Due in ",TEXT(TODAY()-O10,"d")," day")),IF(O10=TODAY(),"Due Today","Overdue")))

对于今天之前的日期,它将告诉您该项目的到期天数。如果 O10 = 今天,那么它将显示“今天到期”。今天过去的任何事情都会过期。最后,如果它是空白的,则单元格也将显示为空白。让我知道你的想法!

于 2018-08-01T21:56:09.830 回答
0

布莱克提供的公式似乎对我不起作用。对于过去的日期,它会在 xx 天后返回,而对于未来的日期,它会过期返回。此外,它只会逾期 15 天返回,而实际上它可能是 30、60 90+。

我创建了这个,它似乎工作并提供“在 xx 天内到期”、“逾期 xx 天”和“今天到期”。

=IF(ISBLANK(O10),"",IF(DAYS(TODAY(),O10)<0,CONCATENATE("Due in ",-DAYS(TODAY(),O10)," Days"),IF(DAYS(TODAY(),O10)>0,CONCATENATE("Overdue ",DAYS(TODAY(),O10)," Days"),"Due Today")))
于 2019-11-16T23:32:57.847 回答