⽇期减法_excel中常⽤的⽇期函数
5个⽇期函数,不⽤看着⽇历数⽇⼦
1、算天数
包括算年龄、算⼯龄,算倒计时,算⼯作天数等,甚⾄各种花式放假情况下的⼯作天数,⽐如每周⼀周三周五休假,算每⽉的⼯作天数
算年龄,先把⾝份证上的出⽣⽇期提取出来,⽐如说⽤mid函数,提取⾝份证左起第6位,8个字符,mid(⾝份证单元格,6,8)
今天可以⽤today函数,=today()不需要填充任何数据,回车即可取出当前电脑上今天的⽇期,year函数可以提取出年,month函数提取⽉份,day提取⽇期
⽇期在excel中是个很特殊的存在,有两个少为⼈知的特性,1、⽇期其实是数字,它的本质是⼀个从1900/1/1开始算起的天数,2、⽇期输⼊时,它的分隔符必须是正斜杠,或者是-,其他符号excel都⽆法识别,会看成⽂本
怎么判断是不是⽇期呢?点开数字格式⾥⾯的下拉选项,如果数字⾥⾯显⽰的是数字,那就是真⽇期,假⽇期则是⼀长串的⽂本
⽤年份相减来算年龄⽐较笼统,因为周岁是指从出⽣到计算时,共经历的⽣⽇数,如果要算周岁的话,要⽤函数DateDif(起始⽇,结束⽇,“时间类型”),时间类型有三个,Y代表年,M代表⽉,D代表
⽇,这样就可以⽤来计算两个⽇期之间间隔的周年数,⽉数或者天数了。
例如=DateDif(1903/10/26,today(),“Y”),即可算出周岁,如果只⽤减法来算,很容易虚增年龄,所以⼀般在算退休年龄,⼯龄等严谨的数字的时候,⽤DateDif函数。
text函数什么意思算⼯作天数
⽐如说2019-5-1和2019-8-31之间,⾃然⽇有多少天,双休情况下⼯作⽇多少天?单休情况下⼯作⽇多少天?
⾃然⽇可以⽤datedif,这么⽤=DateDif(2019-5-1,2019-8-31,“D”),D记得要⽤双引号
如果要计算双休情况下的⼯作⽇,⽤NetWorkDays,净⼯作天数的意思,就是周⼀到周五这五天,这个函数能⾃动去除掉五⼀这样的休息⽇。使⽤⽅法=NetWorkDays(起始⽇期,结束⽇期,[holidays]),在这个案例中的计算⽅法=NetWorkDays(2019-5-1,2019-8-31,[holidays])
如果要指定休息⽇,要⽤函数 NetWorkDays.Intl带周末,使⽤⽅法=NetWorkDays.Intl(起始⽇期,结束⽇期,[周末],[holidays])在这个案例中的计算⽅法=NetWorkDays.Intl(2019-5-1,2019-8-31,仅周⽇,[holidays])
这个还可以⽤字串来做,100100,总共7位数,1表⽰放假,0表⽰⼯作,可以⾃由组合每周的⼯作和休息,放在函数中⼀定要带双引号
=NetWorkDays.Intl(2019-5-1,2019-8-31,1000100,[holidays]),这样能灵活调整
注意:holidays可以是法定的节假⽇,也可以⾃⼰设定本单位的休息时间,单独列成⼀个清单
2、求⽇期
⽐如求交货⽇期,合同⽇期,开⼯⽇期等等,正推反推,⼯作⽇还是⾃然⽇都能算
如果按⾃然天算,直接加减就可以了,因为⽇期的本质就是数字
⽐如2019/5/1,⼯期25天,按照⾃然⽇算就是=2019/5/1+25就可以了
如果是按照⼯作⽇算,需要⽤到函数WorkDay,就是推算⼯作⽇的意思,⽤法是=WorkDay(开始⽇期,天数,假⽇列表),这个函数跟NetWorkDays函数⼀样,只统计周⼀到周五
如果是要计算每周周⽇单休的话,需要⽤到WorkDays.Intl,⽤法是=WorkDays.Intl(开始⽇期,间隔⽇期,周末清单,假⽇列表)
指定⽇期,正推和倒推都是⼀样的,倒推就是把间隔天数写成负数就可以了,⽐如说制作⼯期14天,最后交货时间是2019/5/30,计算要从⼏号开始制作,=WorkDays.Intl(2019/5/30,-14,仅星期⽇,2019/5/1)
3、求星期
⽐如把⽇期转成星期显⽰,并显⽰是第⼏周
WeekNum函数,WeekNum(⽇期,[返回类型]),⽐如说5⽉30号是⼀年中的第⼏周?=WeekNum(2019/5/30,星期⼀),就可以得出来,这⾥星期⼀表⽰的是⼀周从星期⼀开始的
如果要算5⽉30号是星期⼏,可以⽤WeekDay函数,使⽤⽅法=WeekDay(⽇期,[返回类型]),=WeekDay(2019/5/30,星期⼀)
除了⽤weekday转星期,还有⼀个更好⽤的函数Text,它的作⽤是给数字化妆,让它按照指定的格式显⽰
使⽤⽅法是Text(数字,⽂本格式),⽐如说显⽰5⽉30号是星期⼏,可以这么来=Text(2019/5/30,“aaaa”)
如果说2019年5⽉30是星期五,四个a显⽰的是星期五,如果是三个a,则显⽰的是⼀个五
输⼊today函数就能得到今天的⽇期,快捷键是ctrl+;
输⼊now函数就能得到当前时间,快捷键是ctrl+shift+;
两个⽅法的差别在于,函数的值是动态的,会实时变动,按住F2刷新后,⽴刻能得到当前的时间,⽽快捷键输⼊的,是当时的时间,是⼀个静态数据,刷新不能实时更新
这是⼀张对照表。导零的意思就是数字前⾯后⾯为了对齐填充的0,⽐如说字符正常是8位,第1个就是00000001,如果没有导零就会显⽰1.虽然可以⽤⽂本格式来显⽰完全,但⽂本格式⽆法计算。
正确的设置⽅法是⽤text函数,公式为=Text(A2,"000000"),有多少个字符,就写多少个0,这样就能正常显⽰了。
还有⼀种⽅法就是设置单元格格式为⾃定义,在类型这两个字下⾯输⼊0,根据字符长度输⼊对应个数的0,6位数就输⼊000000。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。