EXCEL时间函数都在这里了,赶紧收藏
YEAR(函数)、MONTH、DAY、HOUR、MINUTE、SECOND
首先
EXCEL时间函数有20多个,单独去记忆有点苦难,当我们把每个函数的关系联系到一起就不难了,下面给大家分享一下这些函数如何串联记忆 YEAR(函数)、MONTH、DAY、HOUR、MINUTE、SECOND 首先我们从年、月、日小时、分钟、秒函数开始(YEAR、MONTH、DAY、HOUR、MINUTE、SECOND) 这几个函数的语法都是相似的,参数都为:serial_number(序列号),指的是代表时间的连续数字,如1900年1月1日在计算机中存储的数字为1 到此我们已经轻松的记住了6个时间函数,接着开始串联了,先从YEAR函数开始,我们YEARFRAC函数,这个函数的定义是“返回一个年份数”或者“起始日期到结束日期之间的天数占全年的百分比”。从定义上面去理解有点费脑也很难理解,如果英文好的同学就很好理解,因为FRAC是折断的意思,“YEARFRAC就是一年折断”,也就是不到一年,然后在结合定义就明白这个函数的意思了 YEARFRAC函数=YEARFRAC(start_date,end_date,basis) basis:方式 0:美国,30/360 1:实际天数/实际天数 2:实际天数/360 3:实际天数/365 4:欧洲,30/360 上图中的8%就是YEARFRAC函数的结果,两个日期相隔31天,占全年365天的占比为8% EOMONTH函数 跟MONTH相关的函数有:EOMONTH,只是在MONTH函数之前多了一个字母EO,EOMONTH返回的是一串日期,“表示指定月数之前或者之后的月份的最后一天”读起来有些拗口,我们先了解一下EOMONTH的语法,然后在看个实例就容易理解了 =EOMONTH(start_date,months) start_date:开始日期 months:可以是正数也可以是负数 *通俗的理解是:1,当months为负数时,如上图为-1,意思是上一个月的最后一天 2,当months为正数时,如上图为1,意思是下一个月的最后一天 DAYS360函数 为什么这个时候介绍DAYS360函数呢?因为DAY函数,在DAY函数后面加个S360就是DAYS360,DAYS360函数是什么意思呢?是将一个月按30天,一年12个月,一年按360天来计算,"返回两个日期的间隔天数" =DAYS360(start_date,end_date,[method]) start_date:开始日期 end_date:结束日期 [method]:方法,方式,可选参数,默认为FALSE 或省略 1,FALSE 或省略:美国方法 2,TRUE:欧洲方法 从图2可以看出,开始日期和结束日期相同的情况下,间隔的天数不一样,原因是DAYS函数不是按一个月30天来计算,而且正常情况下的相减。 DAYS函数DAYS函数是返回两个日期间隔的天数 =DAYS(end_date,start_date) 前面是结束日期,后面才是开始日期,如果顺序错误,结果就是负值,如下图DATE函数 DATE是日期的意思,日期在excel表格中就是一串数字,1900-1-1表示数字1,最大日期为9999-12-31,超过则会产生错误值。 =DATE(year,month,day) DATE函数的参数有三个,分别是year,month,day,这三个参数也都是函数 前面说了,日期在excel中就是数字,那么在它们两个间进行切换的快捷键是:ctrl+shift+~和ctrl+shift+# 和DATE函数相似的是TIME函数,因为两者的语法相似 TIME函数 TIME函数在excel表格中表示时间,如:10:12:16,日期和时间在excel表格中都是用数字来表达的,日期用的是整数,而时间用的是大于等于0,小于1的小数,如24:00:00表示数字1,12:00:00表示0.5 =TIME(hour,minute,second) TIME函数的3个参数分别是小时,分钟,秒,而hour,minute,second也是函数 将时间转换为数字的快捷键是ctrl+shift+@ 现在我们重新回到DATE函数,因为跟DATE函数有关联的函数有EDATE、DATEVALUE、DATESTRING、DATEDIF 下面分别介绍它们 EDATE函数 前面我们学习了EOMONTH,这个函数是返回某个月的最后一天,那么EDATE也是返回最后一个日期吗?当然不是,EDATE是返回指定月数后(或者前)的一天,它们相同的地方都是返回一个日期,为了加强记忆,将这两个函数语法写在一起 =EDATE(start_date,months) =EOMONTH(start_date,months) 它们的参数居然是一样的 DATEVALUE函数 这个函数平时使用的很少,用途是将表示日期的字符串转换成序列号。 =DATEVALUE(date_text) date_text:日期字符串 在公式中,要将日期加上英文双引号,如=DATEVALUE("2022-1-4"),否则结果会显示错误值,当需要使用单元格引用时,需要在单元格内容前加上英文单引号如:‘2022-1-4 TIMEVALUE函数 和DATEVALUE函数类似的函数就是TIMEVALUE,用途是将文本形式的时间转换成序列号。 =TIMEVALUE(timetext) time_text:时间字符串 =DATEVALUE(date_text) date_text:日期字符串 将2个函数语法放在一起,更容易记忆 DATESTRING函数 这个函数在某些版本不在介绍或使用,这个函数也是使用频率比较少的函数,只需了解一下即可,其实这个函数和DATEVALUE的正好是相反的,用途是将表示日期的序列号转换成文本日期 =DATESTRING(serial_number) DATEDIF函数 DATEDIF是计算两个日期间隔的天数,月数,年数 =DATEDIF(start_date,end_date,unit) start_date:开始日期 end_date:结束日期 unit:单位,有以下几种形式 (1)"Y":时间段中的整年数; (2)"M":时间段中的整月数; (3)"D":时间段中的天数。 (4)"MD":忽略日期中的月和年; (5)"YM":忽略日期中的日和年; (6)"YD":忽略日期中的年 WEEKDAY函数 WEEKDAY是返回代表一周中第几天的数值,是1-7之间的整数 =WEEKDAY(serial_number,[returl_type]) serial_number:日期序列号 [returl_type]:返回类型,可选参数,一共有10种情况 1:星期日开始作为一周的第一天,数字1-7 2:星期一开始作为一周的第一天,数字1-7 3:星期一开始作为一周的第一天,数字0-6 11:星期一开始作为一周的第一天,数字1-7 12:星期二开始作为一周的第一天,数字1-7 13:星期三开始作为一周的第一天,数字1-7 14:星期四开始作为一周的第一天,数字1-7 15:星期五开始作为一周的第一天,数字1-7 16:星期六开始作为一周的第一天,数字1-7 17:星期日开始作为一周的第一天,数字1-7 WEEKNUM函数 WEEKNUM返回一年中的周数 =WEEKNUM(serial_number,[returl_type]) serial_number:日期序列号 [returl_type]:返回类型,可选参数,一共有10种情况 return_type 起始于星期几,计数从1-7 系统1 1或者省略 起始于星期日 系统1 2 起始于星期一 系统1 11 起始于星期一 系统1 12 起始于星期二 系统1 13 起始于星期三 系统1 14 起始于星期四 系统1 15 起始于星期五 系统1 16 起始于星期六 系统1 17 起始于星期日 系统1 21 起始于星期一 系统2 WORKDAY函数 WORKDAY指返回指定若干个工作日之前或者之后的日期Mssq日期函数,(结果是一串数字) =WORKDAY(start_date,days,[holidays]) start_date:开始日期 days:指定的工作日天数 [holidays]:假期,可选参数 实例: WORKDAY是工作日的意思,所以函数默认自动跳过周末,节假日需要手动添加,从2021-12-21开始算,第10个工作日就是函数的结果,上图函数参数去除了holidays WORKDAY.INTL函数 WORKDAY.INTL是自定义周末返回指定工作日之后的日期 =WORKDAY.INTL(start_date,days,[weekend],[holidays]) start_date:开始日期 days:指定工作日数 [weekend]:自定义周末 [holidays]:节假日编号自定义周末 1 星期六、星期日 2 星期日、星期一 3 星期一、星期二 4 星期二、星期三 5 星期三、星期四 6 星期四、星期五 7 星期五、星期六 11 仅星期日 12 仅星期一 13 仅星期二 14 仅星期三 15 仅星期四 16 仅星期五 17 仅星期六 NETWORKDAYS函数 NETWORKDAYS是返回两个日期间完整的工作日数。 WORKDAYS是返回指定工作日数的日期。 =NETWORKDAYS(start_date,end_date,[holidays]) start_date:开始日期 end_date:结束日期 [holidays]:节假日 两个函数比较一下 =WORKDAY(start_date,days,[holidays]) start_date:开始日期 days:指定的工作日天数 [holidays]:假期,可选参数 可以看出,NETWORKDAYS函数多了一个参数:end_date,语法基本相同 上图中,完整的工作日数是11天。 NETWORKDAYS.INTL函数 NETWORKDAYS.INTL是自定义周末返回两个日期间完整的工作日数 =NETWORKDAYS.INTL(start_date,end_date,[weekend],[holidays]) start_date:开始日期 end_date:结束日期 [weekend]:自定义周末,(参考WORKDAYS.INTL) [holidays]:节假日 和WORKDAYS.INTL函数相似 =WORKDAY.INTL(start_date,days,[weekend],[holidays]) start_date:开始日期 days:指定工作日数 [weekend]:自定义周末 [holidays]:节假日 接下来是2个没有参数的函数,TODAY、NOW TODAY函数、NOW函数=TODAY(),返回当天的日期 =NOW(),返回当前的时间 到此,所有的时间函数都介绍完毕了,大家赶紧收藏吧,关注我,分享更多干货! (编辑:晋中站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |