2

我有一个人的出生日期,想计算他/她下一个生日的天数。如何以处理闰年和其他“奇怪”事情的方式做到这一点?

4

3 回答 3

7

使用谷歌电子表格内部函数:

=IF(DATE(YEAR(TODAY()),MONTH(A2),DAY(A2))>TODAY(),
  DATE(YEAR(TODAY()),MONTH(A2),DAY(A2)),
  DATE(YEAR(TODAY())+1,MONTH(A2),DAY(A2)))
-TODAY()

其中A2是包含此人生日的单元格。

开头的IF是为了测试下一个生日是今年还是明年。

于 2012-02-03T14:21:56.113 回答
0

我发现使用 WolframAlpha 计算天数是最“简单”的方法。使用以下代码:

REGEXEXTRACT(JOIN("";ImportXML(JOIN("";"http://www.wolframalpha.com/input/?i=birthday+";YEAR(A2);"-";MONTH(A2);"-";DAY(A2);"&asynchronous=false&equal=Submit"); "//script")); "(\d+) days until next")

A2这个人生日的牢房在哪里。

于 2010-08-26T13:53:18.610 回答
0

使用纯工作表函数的稍微更简洁的版本是:

=DATE(YEAR(A2)+DATEDIF(A2,TODAY(),"y")+1,MONTH(A2),DAY(A2))-TODAY()

这更简单,并使用DATEDIF(...,"y")来获取已过去的完整年份并添加一个,而不是需要If围绕整个计算。

在自己解决了这个问题之后,我在这个站点上遇到了相同的解决方案,其中包括更多解释。

于 2020-12-21T23:08:58.047 回答