問題的提出:
日期時間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”的日期時間數(shù)據(jù)可以用日期時間序列值表示。這個值是小數(shù),其中整數(shù)部分表示天數(shù),小數(shù)部分表示時間(可以轉換成“時-分-秒” )。
用截尾取整函數(shù)TRUNC提取整數(shù)表示天數(shù),用日期時間“2005-5-15 9:10:45”的序列值減去整數(shù)部分,其差表示時間的序列值。再用TXET函數(shù)把表示時間的序列值表示成“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是空白單元格(""),則顯示空字符("");否則返回兩個日期時間差的天數(shù)(TRUNC(B2-A2))和(&)時間差(時-分-秒——TEXT(B2-A2-TRUNC(B2-A2),"h:mm:ss"))。
假設A2單元格是起始時間,B2是結束時間。在其他如C2單元格寫下公式:
1、時:分:秒格式(不計算天數(shù)): =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、時分秒格式(將天數(shù)轉換成小時): =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)