2024年2月19日发(作者:)
Excel公式和函数 返回日期和时间
该类函数可以将日期和时间值以不同方式格式化输出。例如,格式化输出年、月、日等函数值,以及返回小时数和分钟数,另外,还可以计算返回的系统日期和时间。本节将具体介绍该类函数的用法。
1.YEAR函数
该函数返回某日期对应的年份。返回值为1900到9999之间的整数。该函数还可以用来计算员工工作的工龄。
语法:YEAR(serial_number)
其中,参数serial_number表示将要计算年份的日期。
例如,某公司统计了部分辞职员工的入职日期和离职日期,用来计算每位员工工作的近似工龄作为结算工资时的一个参考标准。
在工作表中,输入相应的员工信息。然后,在E2单元格中输入“=YEAR(D2)-YEAR(C2)”公式,利用自动填充功能计算其他员工的工龄,其计算结果如图3-1所示。
图3-1 计算员工工龄
在本章的学习中,计算日期和时间函数,首先应了解一下Excel支持的两种日期系统。如表3-1显示了每个日期系统中的第一天和最后一天的日期及其对应的序列值。
表3-1 默认日期系统
使用标准
Windows系统
苹果公司
系统日期
1900
1904
第一天
1900年1月1日(序列值1)
1904年1月2日(序列值 1)
最后一天
9999年12月31日
(序列值2958465)
9999年12月31日
(序列值 2957003)
2.MONTH函数
该函数返回某个日期代表的月份,是介于1到12之间的整数。由于日期是作为有序序列数进行存储的,因此DAY函数返回的值都是公历值。
语法:MONTH(serial_number)。
其中,参数Serial_number表示要查找的月份的日期。
例如,某公司统计了部分员工的具体出生年月日,根据这些日期,公司可以了解员工的出生月份。在C2单元格中,输入“=MONTH(B2)”公式,如图3-2所示。
计算结果
图3-2 计算员工的出生月份
3.DAY函数
该函数返回1到31之间的一个整数(包括1和31),代表某月中的一天。该函数返回的也是公历值。
语法:DAY(serial_number)。
其中,参数Serial_number表示要查找的那一天的日期。
例如,根据某公司员工的纳税情况,计算员工地当前月纳税的日期为第几天,并计算出该员工纳税的日期为星期几。
在工作表中,输入相应的“纳税情况”信息,并在C3单元格中,输入“=DAY(B3)”公式,计算B3单元格中的日期在当月中的天数。然后复制该公式至C12单元格,计算其他员工的纳税日期在当前的天数,如图3-3所示。
计算结果
图3-3 计算出生日期在当前月的天数
下面通过设置单元格的格式,还可以得出员工纳税日期为该月的星期几。
选择C3至C12单元格区域,并右击该区域,执行【设置单元格格式】命令,弹出【单元格格式】对话框。然后,选择【数字】选项卡,并选择【自定义】选项,在【类型】文本框中输入dddd字母,如图3-4所示。
设置完成后,单击【设置单元格格式】对话框中的【确定】按钮,即可得到纳税日期的星期数,结果如图3-5所示
设置参数
返回星期数
图3-4 设置【自定义】类型 图3-5 员工出生日期的星期数
在【类型】文本框中,输入dddd字母,可以返回星期名称的全称,如Monday、
Tuesday等。若输入ddd字母,则可以返回星期名称的缩写,如Mon、Tue、Wed提 示
等。
4.DATE函数
在Excel中,DATE函数不仅可以使用正常的日期值返回代表特定日期的年、月、日。还可以通过输入无效日期参数,如在月份参数中输入14或者在日期参数中输入大于31的数值,
DATE函数会自动转换计算结果。
语法:DATE(year,month,day)。
其中,在该函数中,各参数功能如下:
Year 代表指定年份的数值,小于9999。
Month
代表一年中从1月到12月各月的正整数或负整数。
Day 代表一月中从1日到31日各天的正整数或负整数。
例如,根据货物的上架时间的年、月、日数字,来统计7种货物的上架日期。例如,在“上架日期”所对应的单元格中,输入“=DATE(B3,C3,D3)”公式,即可在E3单元格中显示“上架日期”。然后运用相同的方法,求出其他单元格的“上架日期”,如图3-6所示。
计算结果
图3-6 计算“上架日期”
在E3单元格内的公式中,所对应的单元格的值为正常的日期值。在E4单元格内的公式中,所对应的月份超过了正常月份12,所以系统将自动计入下一年中,且“=14-12”得出的值将为上架的月份,故返回“2008-2-13”。在E5单元格中,所对应的年份为56,因为在Windows系统的工作表中使用的是1900日期系统,Excel会将1900年1月1日保存为序列号1;因为年份的序列号为56,所以返回的年份为“=1900+56=1956”。在E6单元格中,日期所对应的天数多于该月的天数,故自动计入下一个月,返回日期为“2007-2-1”。
Excel是按序列号来保存日期的,所以可以对日期进行计算。例如,在单元格中输入
“=DATE(B3,C3,D3)-DATE(B4,C4,D4)”公式,然后将数据格式更改为“常规”,则可以返注 意
回天数为120。
5.NOW函数
根据计算机系统内部设定的日期和时间,NOW函数不仅可以插入当前的日期和时间,而且还可以通过公式的巧妙组合来输入如昨天的日期“=NOW()-1”、上个月的日期“=NOW()-31”等。
语法:NOW()
例如,某工厂需要每日统计各个小组生产工作量,统计后需打印存档。为了避免每天重复输入日期和时间,此时就可以利用NOW()函数来实现。在D2单元格中输入“=NOW()”公式,即可计算出当前的日期和时间,如图3-7所示。
计算
图3-7 函数NOW()的返回值
系统日期和时间发生改变时,按F9功能键,则时间和日期也会随之实现更新。
提 示
6.TODAY函数
该函数可以返回计算机系统内部时钟当前日期的序列数。它与NOW函数的不同之处在于TODAY函数只返回当前日期,而NOW函数返回的是当前的日期和时间。
语法:TODAY()
例如,某婴儿今天出生,给出当前日期,并根据当前日期计算出该婴儿100天、一周岁、三周岁后的日期。
在B1单元格中,输入“=TODAY()”公式,计算“当前系统日期”。然后,在B2至B4单元格区域中,分别输入“=TODAY()+100”、“=TODAY()+366”和“=TODAY()+1096”公式,计算婴儿出生100天、一年和三年后的日期”,如图3-8所示。
计算结果
图3-8 计算相关日期
在上述的公式中,分别加上366和1096,是因为2008年为闰年,而闰年全年为366天,所以需要加上366天,而三年需加上“366×3=1096”天。
7.HOUR函数
该函数将指定的时间转换为小时数,返回0到23之间的一个整数(包括0和23),代表一天中的某一小时。
语法:HOUR(serial_number)。
其中,参数Serial_number表示一个时间值,包含要查找的小时数。
例如,某网吧统计了各个顾客的联网时间和下网时间,从而计算每位顾客的上网时间。下面在工作表中,输入上网的基础数据信息。
然后,在D3单元格中,输入“=HOUR(C3-B3)”公式,计算第一个顾客的上网小时数,再利用自动填充功能,计算其他顾客的上网小时数,如图3-9所示。
计算结果
图3-9 计算顾客的上网小时数
表示6:45 PM)或其他公式或函数的结果(例如 TIMEVALUE("6:45 PM"))。
提 示
时间有多种输入方式:带引号的文本字符串(例如 "6:45 PM")、十进制数(例如0.78125
8.MINUTE函数和SECOND函数
MINUTE函数返回时间值中对应的分钟数,为一个介于0到59之间的整数。而SECOND
返回时间值中的秒数,秒数为0到59之间的整数。
语法:MINUTE(serial_number)。
SECOND(serial_number)
其中,参数Serial_number表示一个时间值,包含要查找的分钟数或秒数。
上例中计算出了顾客上网的小时数,同样也可以计算出上网的分钟数和秒数。在E3单元格中输入“=MINUTE(C3-B3)”公式后,计算第一位顾客上网的分钟数,然后利用自动填充功能计算出其他顾客的上网分钟数,如图3-10所示:
计算结果
计算结果
图3-10 计算顾客的上网分钟数 图3-11 计算顾客的上网的秒数
在F3单元格中,输入“=SECOND(C3-B3)”公式,计算第一位顾客上网的秒数,然后利用自动填充功能计算出其他顾客的上网秒数,如图3-11所示。


发布评论