在儿童早期教育中,很多时候,孩子的年龄都必须以“月。月”为单位进行报告,录取和评估。基本上,此格式显示自出生起经过的年月数,以句点分隔。

您可以通过多种方法来获得所需的年龄。从字面上看,您选择进行工作的公式取决于您对公式的偏好。

假设您在单元格A1中有出生日期,您可能会认为您可以对该日期使用一些数学运算来确定正确的信息。例如,您可能认为您可以使用以下公式:

=NOW() - A1

这将产生两个日期之间的差值,但是如果您对结果应用自定义格式(“ yy.mm”),则会发现它没有提供想要的Years.Months 。你会接近一些东西;年份是正确的,但月份应在0到11之间变化,而月份在1到12之间变化。(某人可能是12岁零0个月大,但说12岁零12个月大不合适。)

|||这意味着您需要开始采用公式化方法。一个简单的公式如下:

=YEAR(NOW())-YEAR(A1) & "." & MONTH(NOW())-MONTH(A1)

上面有很多变体,但问题是它们都只看今天的月份,而不是生日的月份。他们没有考虑每月的某天。那重要的是什么?因为自出生以来经过的月数取决于出生月的天与当月的天的比较,因此该公式不允许进行这种区分。

因此,您可能会考虑一个更复杂的公式,该公式实际上试图计算经过的年月,例如以下公式:

=TEXT(INT((NOW()-A1)/365.25),"##0")&"."&TEXT(INT(MOD(NOW()-A1,365.25)/31),"00")

这更接近所需的时间,但是在临近出生日期的某个月左右的时间,仍然有可能在一两天内关闭。更接近的是使用YEARFRAC函数的公式:

=ROUNDDOWN(YEARFRAC(A1,TODAY()),0)&"."&ROUNDDOWN((YEARFRAC(A1,TODAY())-ROUNDDOWN(YEARFRAC(A1,TODAY()),0))*12,0)

但是,最好的(也是最简单的)公式化方法是:

=DATEDIF(A1,NOW(),"y") & "." & DATEDIF(A1,NOW(),"ym")

该公式依赖于DATEDIF函数,该函数确定两个日期之间的差值。函数返回的值取决于传递给函数的第三个参数。在这种情况下,第一次调用DATEDIF将返回经过的年数,第二次返回经过的月数。它提供了迄今为止讨论的所有公式中最准确的结果。

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

本技巧(9148)适用于Microsoft Excel 2007、2010、2013、2016、2019和Office 365中的Excel。您可以在此处为Excel的较早菜单界面找到此技巧的版本:

链接:/ excel-Ages_in_Years_and_Months [年份和月份的年龄]。