DATEDIF

该函数可返回「起始日期」与「终止日期」之间的整数天数、月份数或年数。

语法

DATEDIF(起始日期; 终止日期; 间隔单位)

起始日期」是开始计算的日期。

终止日期」是计算终止的日期。终止日期必须晚于起始日期。

间隔单位」为字符串,有效值有「d」「m」「y」「ym」「md」或「yd」。

批注图标

将日期作为公式一部分输入时,日期分隔符 (斜杠与短横线) 会被理解为算术运算符。因此,按此格式输入的日期无法正确识别为日期,导致错误计算。要保持日期作为公式一部分,请使用 DATE 函数,例如「DATE(1954;7;20)」或将日期放在引号内,使用 ISO 8601 标记法,例如「1954-07-20」。请避免使用受区域影响的日期格式,例如「07/20/54」,在其他区域设置下加载文档,会导致计算错误。


提示图标

支持 ISO 8601 日期时间格式 (及其分隔符扩展格式) 的无歧义转换。如果出现 #VALUE! 错误,请在「 - LibreOffice Calc - 公式」「详细计算设置」区域的「详细信息...」 按钮,「文本转换为数字」列表框,取消选择「生成 #VALUE! 错误」。


「间隔单位」有效值

返回值

"d"

「起始日期」与「终止日期」之间的整数天数。

"m"

「起始日期」与「终止日期」之间的整数月份数。

"y"

「起始日期」与「终止日期」之间的整数年数。

"ym"

「起始日期」与「终止日期」之间的整数月份数,忽略年数。

"md"

「起始日期」与「终止日期」之间的整数天数,忽略年月数。

"yd"

「起始日期」与「终止日期」之间的整数天数,忽略年数。


示例

生日计算。某人生于 1974-04-17。今天日期为 2012-06-13。

=DATEDIF("1974-04-17";"2012-06-13";"y") yields 38.

=DATEDIF("1974-04-17";"2012-06-13";"ym") yields 1.

=DATEDIF("1974-04-17";"2012-06-13";"md") yields 27.

So he is 38 years, 1 month and 27 days old.

=DATEDIF(DATE(1974,4,17);"2012-06-13";"m") yields 457, he has been living for 457 months.

=DATEDIF("1974-04-17";"2012-06-13";"d")」得到 13937,他已经活了 13937 天。

=DATEDIF("1974-04-17";DATE(2012;06;13);"yd") yields 57, his birthday was 57 days ago.