⽇期函数date的基本⽤法
⼩伙伴们好,昨天我们说了year,month,day这3个函数,它们可以从⼀个⽇期中分别提取出年份,⽉份和天数。如果反过来,想要由年⽉⽇3部分组成⼀个⽇期,就要⽤到date函数。它返回表⽰特定⽇期的序列数。
-01-
函数说明
date函数返回在excel⽇期时间代码中代表⽇期的数字,⽽且它会⾃动转换⽇期,看完下⾯的你就会知道是什么意思。
函数语法如下,有3个参数,分别是年⽉⽇。
DATE(year,month,day)
Year :必需。year参数的值可以包含⼀到四位数字。
如果year介于0到1899之间,则Excel会将该值与1900相加来计算年份。例如,DATE(108,1,2)返回2008年1⽉2⽇ (1900+108)。
如果year介于1900到9999之间,则Excel将使⽤该数值作为年份。例如,DATE(2008,1,2)将返回2008年1⽉2⽇。
如果year⼩于0或⼤于等于10000,则Excel返回错误值#NUM!。
Month:必需。⼀个正整数或负整数,表⽰⼀年中从1⽉⾄12⽉的各个⽉。它不⼀定⾮要是1-12之间的整数,也可以是⼤于12或⼩于1的整数。当不在1-12之间时,date函数会对⽇期⾃动转换。
⽐如month⼤于12,DATE(2008,14,2)返回表⽰2009年2⽉2⽇的序列数。相当于2008-12-2往后推2个⽉。
再⽐如month⼩于1,DATE(2008,-3,2)返回表⽰2007年9⽉2⽇的序列号。相当于2008-1-2往前推了4个⽉。
Day:必需。⼀个正整数或负整数,表⽰⼀⽉中从1⽇到31⽇的各天。同样它也不⼀定⾮要是1-31之间的整数,当不在1-31之间时,date函数会⾃动转换⽇期。
⽐如day⼤于31,DATE(2008,1,35)返回表⽰2008年2⽉4⽇的序列数。相当于2008-1-31往后推4天。
再⽐如day⼩于1,DATE(2008,1,-15)返回表⽰2007年12⽉16⽇的序列号。相当于2008-1-1往前推了16天。
-02-
具体应⽤
1.计算结款⽇期
假如账期是1个⽉,根据到货⽇期求结款⽇期。也就是到货⽇期往后推1个⽉就是结款⽇期。在B17单元格输⼊公式=DATE(YEAR(A17),MONTH(A17)+1,DAY(A17)),下拉填充。⾸先⽤year,month,day分别把年⽉⽇提取出来,然后在⽉份上加1个⽉,最后⽤date合并成⼀个新⽇期。
2.计算⼊职⽇期的上⼀个⽉最后⼀天的⽇期
上⽉最后⼀天的⽇期等于当⽉⽉初的⽇期减去1,⽐如2019-8-31就是由2019-9-1减1得到的。在C25单元格输⼊公式=DATE(YEAR(B25),MONTH(B25),),向下填充。⽤year和month分别提取出年份和⽉份作为date的第1和第2参数,第3参数什么也不写,相当于0。得到的⽇期是2019-9-0,可是没有这个⽇期,实际就是2019-9-1往前推1天。
如果你不理解上⾯公式的意思,可以⽤下⾯这个公式=DATE(YEAR(B25),MONTH(B25),1)-1,⽤year和month提取出年份和⽉份,天数为1,date就得到了当⽉⽉初的⽇期,也就是2019-9-1,然后减1就是上⽉⽉末的⽇期。
其实减1可以在第3参数day中减去,公式就可以写为=DATE(YEAR(B25),MONTH(B25),1-1)。1-1是0,继续化简为=DATE(YEAR(B25),MONTH(B25),0)。0可以省略,就成为最开始的公式。
text函数什么意思还可以⽤=B25-DAY(B25)这个公式来取得上⽉⽉末的⽇期。是⼀样的道理。
3.计算⼊职⽇期所在⽉份的第1天的⽇期
这个就简单了,在C33单元格输⼊公式=DATE(YEAR(B33),MONTH(B33),1),下拉填充。或者⽤=B33-DAY(B33)+1这个公式,就是上⽉⽉末⽇期加1。别忘了还有text函数,公式为=--TEXT(B33,"e-m")。
4.计算⼊职⽇期所在⽉份的最后1天的⽇期
计算当⽉⽉末的⽇期同样是⽤下⽉⽉初的⽇期减1,在C41单元格输⼊公式
=DATE(YEAR(B41),MONTH(B41)+1,),向下填充。
5.计算⼊职⽇期所在⽉份的天数
在上⼀个问题的基础上,⽤day提取出⽉末⽇期的天数就可以了。在C49单元格输⼊公式
=DAY(DATE(YEAR(B49),MONTH(B49)+1,)),向下填充。
类似的题⽬昨天也说过,不过昨天的答案有点漏洞,没有考虑全⾯,应该改为
=MATCH(,0/(MONTH(A14)=MONTH(A14+ROW($1:$31)-1)))+DAY(A14)-1,按ctrl+shift+enter 三键结束。
链接:
pan.baidu/s/1o-3xz8TZPMO_Eg2sjIq0XA
提取码:udbe
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论