公司的会计年度可以在任何时候结束,而不仅仅是http://calendarcorner.net/[calendar]年结束。将工作表放在一起时,您可能需要计算一个日期,该日期是在给定日期之前或之后的一年,该日期代表一个会计期间的结束。可以使用许多公式轻松完成此操作,例如:

=DATE(YEAR(D1)-1, MONTH(D1), DAY(D1))

此公式采用日期(单元格D1)并从中减去一年。因此,如果D1包含日期6/30/10,则该公式将返回6/30/09。

在大多数情况下,这非常有效,因为从一年到下一年,大多数月份的天数相同。当然,有一个例外-2月。如果您的会计年度结束于2月,则该月中的可变天数可能会对上述公式造成严重破坏。如果单元格D1包含2/28/13,则当会计期间的实际结束时间为2/29/12时,该公式将返回2/28/12。同样,如果单元格D1包含2/29/12,则该公式将返回3/1/11,这显然不是预期的。

您可以通过两种方法确定会计期的结束时间。首先是通过使用EOMONTH函数。此函数用于返回过去或将来给定月份数的月末。例如,如果您想知道十二个月前的月的最后一天,则可以使用以下公式:

=EOMONTH(D1,-12)

EOMONTH功能是Analysis ToolPak的一部分,因此您需要确保已在系统上安装并启用了它。 (其他_ExcelTips中已介绍了此操作。)

在某些情况下,您可能不想使用EOMONTH。例如,您可能正在将工作簿分发给其他人,并且不确定他们的系统上是否安装了Analysis ToolPak。在这种情况下,您可以使用以下公式:

=DATE(YEAR(D1)-1, MONTH(D1)+1, 0)

就像EOMONTH函数一样,此公式返回恰好一年前的月底。返回一年前月末的另一个公式如下:

=D1-365-(DAY(D1)<>DAY(D1-365))

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

本技巧(2314)适用于Microsoft Excel 97、2000、2002和2003。可以在以下功能区中为Excel的功能区界面(Excel 2007及更高版本)找到本技巧的版本: