我想到最簡單而又容易明白的方法是用 MROUND() 。
首先,如 nelsonywm2000 所說,時間在 Excel 內是以「日」為儲存單位 ,所以 1 在 Excel 內就等於 24 小時。
問題第二個例子中,B1 - A1 是 3 個小時 15 分鐘,在 Excel 內就是 0.135416667 日,將之乘以 24 ,就得出 3.25 ,亦即 3.25 個小時。
你要的四捨五入,即大於或等於半小時,進位成半小時,否則棄掉分鐘。這其實就是以半小時作四捨五入。
利用 MROUND 你選擇將某個數以某個倍數來作四捨五入,亦即是說 MROUND(X, Y) 就是將 X 四捨五入至最接近 Y 的倍數,如 MROUND(3.25, 0.5) = 3.5 因為最接近 3.25 而又是 0.5 的倍數的有 3.0 及 3.5 ,當中 3.5 就是四捨五入後的結果。
所以,以下公式可以做到你要的答案:
=MROUND((B1-A1)*24, 0.5)
2009-06-26 12:13:08 補充:
另外, MROUND 亦可以方便地更改以多少分鐘作四捨五入,例如如果以後情況有變,你要以 15 分鐘而不是半小時來作四捨五入,那麼你只要將 0.5 改成 15/60 或 0.25 即可,如 3 小時 10 分,以 15 分鐘作四捨五入,就是 3 小時 15 分鐘,即 3.25 :
MROUND(3+10/60, 15/60) = 3.25
而 3 小時 5 分鐘,因 5 分鐘不超過 15 分鐘的一半,就會「四捨」,答案即會變成 3
=MROUND(3+5/60, 15/60) = 3
2009-06-26 12:15:33 補充:
如你用 MROUND 時出現 #NAME? 錯誤,即表示你沒有載入 Analysis Toolpak (分析工具箱) ,可以根據以下方法解決:
http://office.microsoft.com/zh-tw/excel/HP011277241028.aspx?pid=CH062527761028