EXCEL中求兩個時間間隔多少小時的算法

  今天收到學員來信要求計算兩個時間點之間間隔多少小時的算法,同時還附帶要求:每滿30分鐘按0.5小時計算,如25分鐘為0,45分鐘只能計0.5小時。這個應用在計算加班工時中特別有用,現分享如下:

假設A列放置的是開始時間,B列放置是結束時間,C列中求加班小時數。

開始時間結束時間加班小時數

******** 8:00******** 16:008

******** 8:00******** 15:307.5

******** 16:00******** 0:008

******** 16:00******** 23:307.5

******** 0:00******** 8:008

******** 0:00******** 7:307.5

******** 19:30******** 7:3012

******** 19:30******** 7:0011.5

******** 16:00******** 16:250

******** 16:00******** 16:300.5

******** 16:00******** 16:450.5

具體公式如下:=ROUNDDOWN(ROUND((B2-A2)*24*60,0)/30,0)/2

解釋:時間與時間相減,得出的結果是以天為單位的小數,因此要乘以24小時再乘以60,轉換為分鐘,同時以30分鐘為單位,進行無條件舍位操作ROUNDDOWN(),求出有幾個30分鐘,最後除以2,轉換為小時。由於小數位精確的問題,以上方法求出的數據可能會少0.5小時,所以要再加上一個四舍五入函數ROUND(),確保小數位部份不出錯。