Excel应用大全 | 如何计算日期?
SIMPLE HEADLINE
日期是一种特殊类型的数据,可以直接进行加、减等运算。例如,要计算三天后的日期, 可以使用公式 =TODAY()+3,公式中的 TODAY() 函数用于返回系统当前日期,用当前日期直 接加上 3,得到 3 天后的日期。 Excel 中的常用日期函数及功能如表 5-5 所示。表 5-5 常用日期函数函数名称功能DATE 函数根据指定的年、月、日返回日期序列值DATEDIF 函数计算日期之间的年数、月数或天数DAY 函数返回某个日期在一个月中的天数MONTH 函数返回日期中的月份YEAR 函数返回对应某个日期的年份TODAY 函数用于生成系统当前的日期NOW 函数用于生成当前日期和时间EDATE 函数返回指定日期之前或之后指定月份数的日期EOMONTH 函数返回指定日期之前或之后指定月份数的月末日期WEEKDAY 函数以数字形式返回指定日期是星期几WORKDAY 函数返回指定工作日之前或之后的日期WORKDAY.INTL 函数使用自定义周末参数,返回指定工作日之前或之后的日期NETWORKDAY 函数返回两个日期之间的完整工作日数NETWORKDAYS.INTL 函数使用自定义周末参数返回两个日期之间的完整工作日数DAYS360函数按每年360天返回两个日期间相差的天数(每月 30 天)
年月提取年月提取示例 5-37根据记账日期提取会计期间会计年度是指以年度为单位进行会计核算的时间区间,是反映单位财务状况、核算经营成果的时间界限,通常自公历 1 1 12 31 日止。会计月是会计分期中会计年度的细化,一般和公历月份相同。5-58 展示了某企业会计凭证清单的部分内容,假设该企业的会计月和公历月份相同, B 列的记账日期,计算对应的会计年度和会计月。
图5-58会计凭证清单在 E2 单元格输入以下公式,计算会计年度。=YEAR(B2) 在 F2 单元格输入以下公式,计算会计月。同时选中 E2:F2 单元格区域,双击 F2 单元 格右下角的填充柄,将公式填充到数据表最后一行。=MONTH(B2) YEAR 函数和 MONTH 函数的作用是根据 B2 单元格的已知日期返回对应的年份和月份。计算日期间隔
ENJOY THE SUMMER日常工作中,经常有两个日期间隔的计算,如计算员工工龄、计算转正到期日等。常用 于计算日期间隔的函数有 EDATE 函数、EOMONTH 函数及 DATEDIF 函数等。示例 5-38计算固定资产本期折旧月数图5-59 展示了某公司固定资产明细表的部分内容。已知固定资产折旧的计算规则为入 账次月开始计提,使用年限到期后的当月照提折旧,固定资产会计年度为 2018 年。需要根 据 D 列的资产入账日期和 H 列的使用年限,计算该固定资产的本期折旧月数。
图5-59固定资产明细表K2 单元格输入以下公式,向下复制填充到表格最后行。=IFERROR(DATEDIF(MAX(EOMONTH(D2,0)+1,--'2018-1-1'),MIN(--'2019-1- 1',EDATE(EOMONTH(D2,0)+1,H2*12)),'m'),0) 公式中用到了多个日期类函数的嵌套组合。EOMONTH 函数的作用是返回指定月数之前或之后月份的最后一天的日期,函数语法 如下。 EOMONTH(start_date,months) 第一参数是开始日期,第二参数是开始日期之前或之后的月份数,如果第二参数为正数, 表示生成未来日期,如果为负数将生成过去日期。 EDATE 函数的作用是根据指定日期,得到相隔指定月份之前或之后的日期。函数语法 与 EOMONTH 函数的语法相同。DATEDIF 函数是一个隐藏函数,用于计算两个日期之间间隔的天数、月数或年数。函 数语法如下。 DATEDIF(start_date,end_date,unit) 第一参数是要计算间隔的起始日期。第二参数是要计算间隔的结束日期,结束日期要大 于起始日期,否则将返回错误值#NUM!。第三参数用于指定返回的类型,参数不区分大小写。不同第三参数及返回的结果如表 5-6 所示。表5-6 DATEDIF 函数第三参数和返回的结果 unit 参数函数返回结果Y时间段中的整年数M时间段中的整月数D时间段中的天数MD日期中天数的差。忽略日期中的月和年YM日期中月数的差。忽略日期中的日和年YD日期中天数的差。忽略日期中的年IFERROR 函数用于屏蔽公式返回的错误值,函数语法如下。 IFERROR(value,value_if_error) 第一参数是需要屏蔽错误值的公式,第二参数用于指定当公式计算结果为错误值时要返 回的内容。在本例中,要计算本期折旧月数,首先要确定本期的折旧开始日期。如果入账日期早于 固定资产会计年度,则本期的折旧开始日期为固定资产会计年度的 1 月 1 日,否则为实际的 入账日期。如果入账日期加上使用年限后晚于固定资产会计年度,则本期的折旧截止日期为 固定资产会计年度的 12 月 31 日,否则为实际的到期日期。 公式中的“MAX(EOMONTH(D2,0)+1,--'2018-1-1')”部分,是 DATEDIF 函数的第一参 数。已知固定资产的折旧是从入账次月开始计提,因此先使用 EOMONTH(D2,0) 计算出入账 当月的月末日期,加 1 后得到次月 1 日的日期。然后用 MAX 函数提取出该日期与 2018 年 1 月 1 日两者较大的一个,作为计算折旧月数的起始日期。 “MIN(--'2019-1-1',EDATE(EOMONTH(D2,0)+1,H2*12))”部 分, 是 DATEDIF 函数的 第二参数。先使用“EOMONTH(D2,0)+1”计算出固定资产入账次月 1 日的日期,然后使用 EDATE 函数计算从此日期开始计算的折旧计提到期日期,指定的间隔月份为 H2 单元格的使 用年限乘以 12 的结果。最后使用 MIN 函数提取出折旧计提到期日期与 2019 年 1 月 1 日两 者较小的一个,作为计算折旧月数的结束日期。因为 DATEDIF 函数计算结果是日期间隔的 整月数,所以这里的“2019-1-1”要比实际固定资产会计年度的结束日期晚一天。DATEDIF 函数第三参数使用“M”,表示根据起始日期和结束日期计算间隔的整月数。如果固定资产的折旧计提到期日期早于 2018 年 1 月 1 日,DATEDIF 函数将返回错误值。因 此使用 IFERROR 函数来屏蔽错误值,当 DATEDIF 函数结果为错误值时返回 0。
END