日期时间函数之三:拼凑和转值换四函数--Date/DateValue/Time/TimeValue函数

发布于 2023-01-17 12:42:46 来源 : 哔哩哔哩

兔年春节就要到了,李老师总想送点什么给大伙儿。


(资料图)

知识无价,大家学习学习EXCEL的日期和时间函数,都在这儿了,共5讲,今天这是第3讲。

Date函数

Date的英文意思就是“日期”,在EXCEL里如要将三个单独的值拼凑为一个日期就用它,函数形如“=Date(年,月,日)”,函数共3个参数,均为必选参数,分别是代表年、月、日的数字,第一参数年须是大于等于1900的数,对大于等于9999的数字,均视同为9999年;第二参数月一般是1-12;第三参数日一般是1-31。比如,“=Date(2023,1,1)”就会得到日期2023/1/1,但这样循规蹈矩地玩这个函数就失去乐趣了,实际上第二参数、第三参数的数值可以是任意的,我们来举几小栗子尝尝,见图1:

图1 DATE函数示例

①公式“=Date(2023,1,0)”,众所周知,日期是没0号的,0是1前面的一个数字,也就是日期2023/1/1向前移动1天,因此得到的日期是2022/12/31;

②公式“=Date(2023,1,32)”,众所周知,日期是没32号的,32是31后面的一个数字,也就是日期2023/1/31向后移动1天,因此得到的日期是2022/2/1;

③公式“=Date(2023,0,0)”,众所周知,日期是没0月的,0是1前面的一个数字,也就是日期2023/1/1向前移动1个月,因此得到的日期是2022/12/1;

④公式“=Date(2023,13,0)”,众所周知,日期是没13月的,13是12后面的一个数字,也就是日期2023/12/1向后移动1个月,因此得到的日期是2024/1/1。

利用Date函数与可以做一个倒计时牌,比如在单元格O2输入公式“=DATE(K2,L2,M2)-TODAY()”,就可得出现在2023/1/12距离2025/1/18还有737天。

Date函数与VBA中的DateSerial作用是类似的,用来拼凑日期,没有学过VBA的话,可以忽视这句话。

想一想,公式“=Date(2023,-1,-1)”,会得到什么日期呢?“=Day(Date(2023,3,0))”不就可以得到2月的最后一天吗?

DateValue函数

DateValue的英文意思就是“日期值”,在EXCEL里如果要将存储为文本的日期转换为从1900/1/1开始的日期的序列值,得用这个函数。函数形如“=Date(日期文本)”,函数仅1个必选参数,例如,公式“=DATEVALUE("1/1/2008")”得到值39448,即日期 2008年1月1日的序列值,图2是几种转换日期文本的情形。根据您电脑的系统日期格式设置可能会导致 DATEVALUE 函数的结果不同。如“1/12/2023”代表了2023年12月1日还是2023年1月12日,电脑设置不同,“=DATEVALUE("1/12/2023")”将得到不同的值。

图2 DATEVALUE函数示例

对于DateValue这个函数,要强调的是:

①它的参数必须是文本,不能是日期,它也不像DATE函数那样能够设置超过1-12的月、超过1-31的日;

②参数表达的日期参数必须表示 1900 年 1 月 1 日到 9999 年 12 月 31 日之间的日期;

③注意第5行已设置为日期格式,如设置常规格式,所见应为数值;

④日期文本如果省略了年,函数自动取电脑日期中的年份。

Time函数。Time的英文意思就是“时间”,在EXCEL里如要将三个单独的值拼凑为一个时间就用它,函数形如“=Time(时,分,秒)”,函数共3个参数,均为必选参数,分别是代表时、分、秒的数字,取值范围[0,32767]。函数的结果是0(零)到 0.99988426 之间的值,表示 0:00:00 (12:00:00 AM) 到 23:59:59 (11:59:59 P.M.) 之间的时间。

选中图3单元格区域B5:F5,在公式编辑栏输入公式“=TIME(B2,B3,B4)”,按Ctrl_Enter,单元格B5格式为时间,其他为数字,现对图3蓝字公式验证如下:

图3 TIME函数示例

单元格C5公式“=TIME(27,0,0)”,27小时,27/24=1.125小时,舍去整数部分为0.12500天,计息结果只保留小数部分,记住;

单元格D5公式“=TIME(0,750,0)”,750分钟,750/60=12.5小时,相当于“=TIME(12,30,0)”,12.5/24=0.52083天,计息结果只保留小数部分;

单元格E5公式“=TIME(0,0,2000)”,2000秒,2000/60=33.33333分,相当于“=TIME(0,33,20)”,33.33333/60=0.55555小时,33分不足60分钟,不需要进位,但可折算为小时,33.33333/60/24=0.023148天;

单元格F5公式“=TIME(27,750,2000)”, 27小时750分钟2000秒,计算结果刚好是单元格C5+D5+E5,即0.12500+0.52083+0.023148=0.66898天。

TimeValue函数

Time Value的英文意思就是“时间值”,在EXCEL里如要由文本字符串表示的时间的数字,函数形如“=Time(时间文本)”,函数仅1个代表时、分、秒文本的必选参数,函数的结果是0(零)到 0.99988426 之间的值,表示 0:00:00 (12:00:00 AM) 到 23:59:59 (11:59:59 P.M.) 之间的时间。

选中图4单元格区域F3:F8,在公式编辑栏输入公式“=TIMEVALUE(TEXT(A3,"")&""&B3&":"&C3&IF(D3="","",":"&D3)&""&E3)”,按Ctrl_Enter,得到若干数值,现将图中主要注意点说明如下:

①将A列用TEXT函数转换成文本格式,否则将会出错,实际上TIMEVALUE对参数中的日期是无视的;

②诸如“AM、PM、上午、下午”这样时段在文本中的位置要遵循电脑中日期格式设置,注意比较单元格F7和F8结果的区别;

③单元格F4是上午,F5是下午,刚好相差0.5日,12小时;

④单元格F6是上午,F7是下午,刚好相差0.5日,12小时,上午这个位置为空,默认是上午,公式等同于“=TIMEVALUE("10:23")”。

图4 TIMEVALUE函数示例

下节预告:

日期时间函数之四:求日期四函数--eDate/eoMonth/WorkDay/WorkDay.INTL函数

Q:你要问,教程有配套的案例文件吗?

A:教程是很详细的,没有案例文件,对照图文是可以学会的,但使用案例文件更快捷些,如果需获取案例文件,可关注微信公众号【智汇会计连锁】,加QQ【案例专用群】581529975群文件自取(密码在公众号回复dt202301自动获取),第一课的案例文件免费送的哦。

关键词: DATE TIME EXCEL TEXT 倒计时牌 TODAY 众所周知 60分钟 最后一天 2008年