[英]Is there a formula for upcoming date using formula in Google sheet based on condition?
我有一个谷歌表,我需要根据 A 列中设置的开始日期来获取下一个即将到来的日期
任何指针都非常感谢? 我无法展示这些努力,因为我对使用 Google 表格的这种重复行为完全陌生
https://docs.google.com/spreadsheets/d/1g_UNg4MjDy3gFufpjZtMRkbBz80K3scQdZOaiAnZi7I/edit#gid=0
这种行为(从今天开始的下一个日期,包括今天)可以通过这个公式手动实现:
={
"Next date from today";
ARRAYFORMULA(
IFS(
A2:A >= TODAY(),
A2:A,
B2:B = "Daily",
TODAY() + MOD(TODAY() - A2:A, C2:C),
B2:B = "Weekly",
TODAY() + MOD(TODAY() - A2:A, 7 * C2:C),
B2:B = "Monthly",
EDATE(A2:A, ROUNDUP((12 * (YEAR(TODAY()) - YEAR(A2:A)) + (MONTH(TODAY()) - MONTH(A2:A)) - IF(DAY(TODAY()) < DAY(A2:A), 1, 0)) / C2:C, 0) * C2:C),
True,
""
)
)
}
对于其他选项(例如“每月的第二个星期一”等),应在该IFS
部分实施其他选项。
如果您对需要从开始日期开始的下一个日期(屏幕截图上的F:F
列)的简单情况感兴趣,那么公式会简单得多:
={
"Next date";
ARRAYFORMULA(
IFS(
B2:B = "Daily",
A2:A + C2:C,
B2:B = "Weekly",
A2:A + 7 * C2:C,
B2:B = "Monthly",
EDATE(A2:A, C2:C),
True,
""
)
)
}
同样,对于其他选项,您需要将相应的部分添加到IFS
。
您可以使用IFS检查Frequency
,并且:
Daily
,将Count
值添加到开始日期。Weekly
,则添加Count
值乘以 7。Monthly
,因为并非所有月份都具有相同的持续时间,请检索YEAR
、 MONTH
和DAY
索引,将Count
添加到MONTH索引,并设置一个新的DATE , EDIT :或按照kishkin的建议,使用EDATE 。它可能是这样的:
=ARRAYFORMULA(IFNA(IFS(
B2:B = "Daily", A2:A + C2:C,
B2:B = "Weekly", A2:A + 7 * C2:C,
B2:B = "Monthly", EDATE(A2:A,C2:C)
)))
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.