excel学习库

excel表格_excel函数公式大全_execl从入门到精通

EXCEL分享|如何求两个时间差的差值

问题:如何求两个时间差的差值?

答案:可以综合使用TIMEVALUE、INT、MOD函数解决

本文使用的演示软件是EXCEL2010。

在其它的软件里,两个时间的差值,一般用DATEDIFF函数来解决,其实EXCEL里也有DATEDIF函数,只不是隐藏的,并不在函数列表中。但它使用起来非常局限性非常大,求二个日期的天数差挺好用的,但不如直接用减法省事,求月份差、年份差也挺方便的,但如果要求两个时间的秒、分、时的差值就不适用了。今天就介绍下如何使用TIMEVALUE函数来求任意一个时间的差值。

TIMEVALUE函数功能:将时间值从字符串转化为序列数,简单的说就是计算给定的时间从0(12:00:00 M)经过了多少秒(这里不是单纯的秒,要换算

简单版:只计算两个时间的差值。为了降低难度,强制指定小日期在前面,大日期在后面。

解决思路:

1、利用TIMEVALUE函数求出起始时间的序列值。如下图:

2、计算出1秒时间的序列差值,这步很关键,如下图:

3、计算出起始时间的序列值的差值,然后除以1秒时间序列差,就可以得到二个时间相关的秒数,如下图:

到些为止,你给定任何二个时间,都可以算出它们相关多少秒。

公式整合:=(TIMEVALUE(B2)-TIMEVALUE(B1))/(TIMEVALUE("0:0:1")-TIMEVALUE("0:0:0")),整合之后就可以一次搞定了。EXCEL函数的学习建议大家可以这么做,先拆分逐步解决,最后再整合成一个公式。

提高版:如何求出二个时间差多少分、多少小时呢?

知道了二个时间的秒数差,我们可以将它除以60,然后取整就可以了。如下图:

同理,将秒数除以3600后取整就可以得到小时数的差值了。如下图:

综合版:要用到&符号将各个部分连接起来。为了避免显示问题,要将秒数差取整。其它的就是利用MOD函数取出相应部分除以60的余数。

=MOD(INT((TIMEVALUE(B2)-TIMEVALUE(B1))/(TIMEVALUE("0:0:1")-TIMEVALUE("0:0:0"))/3600),60) &"小时" & MOD(INT((TIMEVALUE(B2)-TIMEVALUE(B1))/(TIMEVALUE("0:0:1")-TIMEVALUE("0:0:0"))/60),60) &"分" &MOD(INT((TIMEVALUE(B2)-TIMEVALUE(B1))/(TIMEVALUE("0:0:1")-TIMEVALUE("0:0:0"))),60) &"秒"

以上就是如何求二个时间的差值的方法。

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

«    2024年12月    »
1
2345678
9101112131415
16171819202122
23242526272829
3031
控制面板
您好,欢迎到访网站!
  查看权限
网站分类
搜索
最新留言
    文章归档
      友情链接