Google Sheets 年/月/周/天倒计时公式及逾期提示设置求助
Google Sheets 倒计时公式(年/月/周/天+单复数+逾期提示)
最终公式
=IF(B1 >= A1, "Over Due!", TEXTJOIN(" : ", TRUE, DATEDIF(B1, A1, "Y") & " " & IF(DATEDIF(B1, A1, "Y") <> 1, "Years", "Year"), DATEDIF(B1, A1, "YM") & " " & IF(DATEDIF(B1, A1, "YM") <> 1, "Months", "Month"), FLOOR((A1 - EDATE(B1, DATEDIF(B1, A1, "Y")*12 + DATEDIF(B1, A1, "YM")))/7) & " " & IF(FLOOR((A1 - EDATE(B1, DATEDIF(B1, A1, "Y")*12 + DATEDIF(B1, A1, "YM")))/7) <> 1, "Weeks", "Week"), MOD(A1 - EDATE(B1, DATEDIF(B1, A1, "Y")*12 + DATEDIF(B1, A1, "YM")), 7) & " " & IF(MOD(A1 - EDATE(B1, DATEDIF(B1, A1, "Y")*12 + DATEDIF(B1, A1, "YM")), 7) <> 1, "Days", "Day") ) )
公式说明
- 逾期判断:
IF(B1 >= A1, "Over Due!", ...)当当前日期(B1)大于等于截止日期(A1)时,直接显示Over Due!(注:原需求描述的"A1 >= B1"为笔误,已按示例实际逻辑调整) - 年数计算:
DATEDIF(B1, A1, "Y")计算两个日期间的完整年数,搭配IF判断单复数:数量≠1时用复数形式(Years),否则用单数(Year) - 月数计算:
DATEDIF(B1, A1, "YM")扣除完整年数后,计算剩余的完整月数,同样处理单复数 - 周数与天数计算:
- 用
EDATE(B1, DATEDIF(B1,A1,"Y")*12 + DATEDIF(B1,A1,"YM"))得到扣除年、月后的剩余起始日期 - 剩余总天数为
A1 - 起始日期,FLOOR(总天数/7)取完整周数,MOD(总天数,7)取剩余天数,各自处理单复数
- 用
- 格式拼接:
TEXTJOIN(" : ", TRUE, ...)将年、月、周、天的结果用:连接,确保格式符合要求
示例验证
- 当A1=2023/12/24,B1=2023/11/12时,返回结果为
0 Year : 1 Month : 1 Week : 1 Day - 当A1=2023/12/24,B1=2024/12/24时,返回结果为
Over Due!
内容的提问来源于stack exchange,提问作者asianpanda
相关产品推荐
相关产品推荐

