减一天 日期函数_Excel中的日期计算

用    Excel中用一个正整数表示年月日,也就是大于0的整数。例如整数1表示1900年1月1日,整数44013表示2020年7月1日。Excel中不支持早于1900年以前的日期表达,如涉及此前日期计算,需要转换计算。

266497ceca8b8a8456d247f66f3ec9c7.png

    日期是一个整数,因此日期可以通过修改单元格格式设置成不同显示效果,如图。如果你发现日期显示为一个整数,可以右键设置单元格格式为日期格式即可。

86e5b5bb4d23f67c69a2b15c34c42907.png

     标准日期格式的有些人的电脑显示为“/”分隔年月日,有些电脑用“-”分隔,这与电脑设置有关,控制面板——控制面板\时钟、语言和区域——更改日期、时间、数字格式,在其中修改短日期格式即可。

2d3459a0028165659dd4c638291057c7.png

    Excel中如何录入一个日期?可以依次键盘输入2019/7/1,也可以输入2019-7-1,还可以输入19-7-1,这三种输入结果一致。如果仅输入7-1,则默认为本年的日期,即2020年7月1日。

    输入今天日期的快捷键(Ctrl+;(分号)),输入当前时间快捷键(Ctrl+Shif+;),输入当前日期及时间:(Ctrl+;(分号),放开键盘,此时单元格内生成日期,按一下空格键,再按(Ctrl+Shif+;),即可生成日期+时间的格式,如下图演示。

50d524ba99ff133ad56e0bc22fa654f5.gif

     输入公式=TODAY(),返回当天的日期,输入公式=NOW()返回一个带当天日期和当前时间的数据。

    常见的不规范日期录入格式2020.07.01,20200701,20.7.1,7.1。对于不规范的日期格式,通常可以通过以下办法转为规范日期格式:

    数据选项卡——分列——分隔符号——下一步——下一步——选择“日期”——完成。也可以通过相关函数公式进行转换。

    为什么开头要说这么多日期的概念,不直接讲解日期计算?只有了解日期的基本概念,才能真正明白日期函数为何这样计算。

    下面我们开始正式进入日期的计算。

一、两个日期的相差天数。

    1.我们前面知道,日期是一个正整数,那么两个日期的相差天数可以用

        整数 减去 整数 进行计算天数,如下图。

4d6c45dc85bc949b8df2eb7b1b52c6b7.png

    2.除了用相减,还能用Excel中的隐藏函数DATEDIF进行计算。表达式为           DATEDIF(开始日期,结束日期(不能小于开始日期),"D"),其中的D表示日,即英文day。

e8415fd42d46156b51e4d247d5a54479.png

二、计算两个日期之间相差多少个月、相差多少年。

    公式中的M表示月,即英文Month的首字母

4656fe71021c70a54589f9fe8dadebfa.png

   公式中的Y表示月,即英文Year的首字母

f762afdc93575aa87df8a0d7023abb72.png

三、常用日期函数

  1. 函数DATE(年份数字,月份数字,日期数字),例如输入=DATE(2020,12,30)返回的日期是2019-12-30,

    输入=DATE(2021,1,0)返回的是2020-12-31,当日期数字为0时,返回前一天的日期,当要取某一个自然月的最后一天,此方法非常实用。

    fd32965a21425e1bc5d69d28e316cfe6.png

  2. 函数YEAR(规范的日期数字),函数MONTH(规范的日期数字),

    函数Day(规范的日期数字)。

6018b3191c5c30a2abba3b68ee683426.png

结合前面的DATE函数,=YEAR(DATE(2020,12,31))返回的结果也一样,也可以用=YEAR(44195)表示,注意44195是2020年12月30日的整数表达形式(单元格常规格式下的显示效果)

7758afffa6585c483d16dcd432b3c44e.png

为何不直接输入=YEAR(2020)?注意整数2020表示的是1905年7月12日,2020年12月30日转为整数是44195。

MONTH函数的用法类似,返回的日期中的月份数字1-12,DAY返回的是日期中的天1-31

3.函数搭配获取日期所属月份第一天的日期及最后一天日期、自然月天数

1fa61be5c4161ae95f81b19248cf1f06.png

    YEAR(A17)返回年份的数字2020,MONTH(A17)返回月份的数字8,因为是第一天所以DATE函数第三参数直接输入1。

89b9b6754f3b517fbe7029f1e6c4dfbb.png

获取当前月份最后一天日期,DATE(2020,8+1,0),我们前面提到DATE第三参数为0时,获取当前月份第一天的前一天,也就是上月最后一天即DATE(2020,9,0)=DATE(2020,8,31),巧妙获得8月最后一天的日期。

bcdbd3f5f4056f1e01cabbc37c8c6e0f.png

    我们要知道一个自然月中有多少天,看当月最后一天是几号即可,

即=DAY(C17)

4.函数EDATE(日期,数字)。此函数主要用于返回指定日期的往后月数的日期,如下图,2020年7月20日为基数,1个月后的日期为2020年8月20日。而2020年1月29日的1个月后是2020-2-29日,2020年1月31日的1个月后的日期也是2020-2-29日,这是因为此函数取得的日期上限为下个月的最后一天

d7c686eabe60e19db7c254e69e0c2592.png

    EDATE在日常中使用并不多,但是也很实用。

5.函数NETWORKDAYS(开始日期,结束日期,可选参数:排除单个日期或者多个日期列表),工作日指周一至周五。

计算2020-7-1至2020-7-5日工作日天数,可以省略第三参数,实际工作日为1、2、3即三天。

24f6770a5ec214f6859598270e9f7c67.png

计算2020年5月工作日天数,因为5月份有劳动节及调班,故需要使用第三参数进行排除,其中有一天周六补班需加1天。

52b45872ef1a4b0f12f153a494b75786.png

6.函数WEEKDAY(日期,数字),用于返回数字代表星期几。其中第二参数为数字1时,返回1代表星期日,2代表星期一,........;第二参数为2时,返回1代表星期一,2代表星期二,......。在我国,WEEKDAY的第二参数适用2。

0e1a46f9a1d434f864471e404215fadd.png

WEEKDAY函数返回的数字,我们可以通过其他函数转为我们平常用的星期一样式。

=IF(B50=7,"星期日","星期"&TEXT(B50,"[DBNUM1]"))

cfa4c0662b486618d98edc803a34a078.png

7.两个日期相差用年月日表示

=DATEDIF(A2,B2,"y")&"年"&MOD(DATEDIF(A2,B2,"m"),12)&"月"&DAY(B2)-DAY(A2)&"天"

74b8d20e5d90683a234ed7e4f8804842.png

本文演示文件表格下载

https://excelbgjq.lanzous.com/i9JoOeo3t4j

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值