分享

Excel中计算时间差

 静水若深 2009-07-26
问题的提出:
      日期时间1——2005-5-15  9:10:45
      日期时间2——2005-9-16  11:10:25
计算:日期时间2-日期时间1
结果表达:“××(天)  h:mm:dd”
问题分析及思路:
形如“2005-5-15  9:10:45”的日期时间数据可以用日期时间序列值表示。这个值是小数,其中整数部分表示天数,小数部分表示时间(可以转换成“时-分-秒” )。
用截尾取整函数TRUNC提取整数表示天数,用日期时间“2005-5-15  9:10:45”的序列值减去整数部分,其差表示时间的序列值。再用TXET函数把表示时间的序列值表示成“h:mm:dd”时间格式。
日期时间2-日期时间1=TRUNC()&"  "&TXET()
解决方案:
假定
A2中输入日期时间1“2005-5-15  9:10:45”
B2中输入日期时间2“2005-9-16  11:10:25”
在C2中编辑公式——
=IF(OR(A2="",B2=""),"",TRUNC(B2-A2)&" "&TEXT(B2-A2-TRUNC(B2-A2),"h:mm:ss"))
公式释义:
如果(IF)A2或B2是空白单元格(""),则显示空字符("");否则返回两个日期时间差的天数(TRUNC(B2-A2))和(&)时间差(时-分-秒——TEXT(B2-A2-TRUNC(B2-A2),"h:mm:ss"))。
 
假设A2单元格是起始时间,B2是结束时间。在其他如C2单元格写下公式:
1、时:分:秒格式(不计算天数):  =TIME(HOUR(B2-A2),MINUTE(B2-A2),SECOND(B2-A2))
2、天时分秒格式:  =CONCATENATE(DATEDIF(A2,B2,"d"),"天",HOUR(B2-A2),"时",MINUTE(B2-A2),"分",SECOND(B2-A2),"秒")
3、时分秒格式(将天数转换成小时): =CONCATENATE(DATEDIF(A2,B2,"d")*24+HOUR(B2-A2),"时",MINUTE(B2-A2),"分",SECOND(B2-A2),"秒")
4、全都换算成秒:  =DATEDIF(A2,B2,"d")*24*3600+HOUR(B2-A2)*3600+MINUTE(B2-A2)*60+SECOND(B2-A2)

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多