在Google电子表格中计算下一个生日的天数

时间:2010-08-26 13:51:07

标签: google-sheets

我有一个人的出生日期,想要计算他/她下一个生日的天数。如何处理傻瓜和其他“奇怪”的事情?

3 个答案:

答案 0 :(得分:3)

使用谷歌电子表格内部功能:

=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 用于测试下一个生日是今年还是明年。

答案 1 :(得分: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是具有此人生日的单元格。

答案 2 :(得分:0)

一个使用纯工作表函数的更短更简洁的版本是:

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

这更简单,并使用 DATEDIF(...,"y") 获得已过去的完整年份并添加一个,而不需要在整个计算过程中使用 If

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