減去時間單位(不是一天中的時間)

減去時間單位(不是一天中的時間)

如何減去時間單位(不是一天中的時間)?去年我跑了一場馬拉松,成績為 48 分 20 秒。今年我跑了一場馬拉松,成績是47分50秒。當我在 Excel 中執行此操作時,我嘗試了所有可以想像的時間格式(包括[h]mm:ss),但沒有任何效果。我預計結果為-00:00:30(或負 30 秒)。

答案1

Excel 使用一天中的一小部分來儲存時間。因此,3 小時儲存為 0.125 (3/24)。時間儲存為日期/時間值。 Excel 從 1900 年 1 月 1 日凌晨 12:00 開始計算日期(在 Excel for Mac 上為 1904 年 1 月 2 日凌晨 12:00)。輸入時間 0:48:20 實際上是 1900 年 1 月 1 日 0:48:20。 Excel 不支援日期/時間的負值,因此減去負值會導致錯誤(帶有「#######」的儲存格)。

另一個挑戰是讓 Excel 理解 48:20 指的是 48 分 20 秒,而不是 48 小時 20 分鐘。有兩種方法可以做到這一點:

  • 使用小時符號。 48分20秒變成:0:48:20
  • 使用該TIME功能:=TIME(0;48;20)

要考慮的第三件事是單元格的格式。在自訂格式中,您可以使用 [h]:mm:ss 或 [m]:ss。括號告訴 Excel 它應該計算小時數 ([h]) 或分鐘數 ([m]),並且在 23 小時或 59 分鐘後不要將它們恢復為零。因此,在您的情況下,請確保單元格的格式為:[m]:ss

長話短說:沒有「開箱即用」的方法來執行您想要的操作,因為 Excel 不知道如何處理負時間值。

如果你真的想要計算您所要求的內容,您可以使用以下(稍微複雜一點)公式,該公式從 A2 中減去 A1:=IF( A2-A1 < 0; "-"; "") & TEXT( ABS(A2-A1); "[m]:ss" )。實際上,它的作用是減去時間,將其轉換為正數 ( ABS),將其格式化為字串 ( TEXT),並在為負數時在其前面添加一個“-”。請注意,結果是文字而不是數字(值)。

微軟有兩篇文章;一個關於儲存日期和時間值(向下滾動到文章的大約一半)和一個關於加減時間

答案2

Excel處理負時間......但前提是您使用“1904 日期系統”,而不是 Excel 預設的 1900 日期系統

若要為特定工作簿設定該值,請執行下列操作:

檔案 > 選項 > 進階 > 向下捲動至「計算此工作簿時」部分(向底部),然後勾選「1904 日期系統」方塊。

有時您可能會收到不良影響。不要在已經有日期的工作簿中切換到 1904 日期系統 - 因為基準日期1/1/1904而不是1/0/1900日期將改變 4 年零一天(1462 天)。

看截圖:

在此輸入影像描述

答案3

這可行,時間函數不能接受 24 小時,而是用 23 小時愚弄它,然後再修正...

=IF(A1<B1,TIME(23,0,0)-A1+B1+TIME(1,0,0),B1-A1)

相關內容