Sally需要一个公式,该公式将返回自开始日期以来已经过的年,月,周和天数。她已经能够找到一个显示年,月,日的公式,但是将周数排除在外已经使她迷惑了一段时间。

如果Sally只需要查找两个日期之间的天数,周数,月数或年数,那么数学就非常简单。 (只需计算天数,然后除以周,月或年中的适当平均天数即可。)但这并不是她想要的。她想知道一个答案,该答案显示了两个日期之间经过的年,月,周和天数。

因此,如果开始日期是1966年6月10日,结束日期是2019年2月5日,那么她寻求的答案将是“ 52年7个月3周5天”。如果结束日期更改为2019年2月7日,则答案将是“ 52年7个月4周零0天”。在此答案中,每个逐步细化的日期分级仅在答案前面部分的其余部分起作用。

Sally所引用的公式(不包含数周的指标)可以在_ExcelTips_网站的此页面上找到:

https://excelribbon.tips.net/T011360

该技巧显示了几种不同的公式来获得所需的结果,其中大多数依赖于DATEDIF函数。 (在此页面上重新创建另一个_ExcelTips_页面上提供的广泛信息没有任何意义。不过,您可能想看看它。)

如果要增加周数,则基本思想是简单地使用相同的DATEDIF方法,显示周数,然后调整天数以考虑这些周数,方法是:

=DATEDIF(A1,B1,"y") & " years, " & DATEDIF(A1,B1,"ym")

& " months, " & INT(DATEDIF(A1,B1,"md")/7) & " weeks, "

& MOD(DATEDIF(A1,B1,"md"),7) & " days"

这实质上是上面提到的_ExcelTips_页上的第一个完整DATEDIF公式的修改版本。它没有考虑语法和标点符号(就像页面上的后面的公式一样),但是它提供了所需的信息。该基本公式的相对简单扩展是正确的语法和标点符号。

此公式依赖于包含开始日期的A1和包含结束日期的B1(可以轻松地将结束日期设置为今天的日期)。

_ExcelTips_是您进行经济高效的Microsoft Excel培训的来源。

本技巧(12947)适用于Microsoft Excel 2007、2010、2013、2016、2019和Office 365中的Excel。