若要在 Excel 中將秒數轉換為 HH:MM:SS,同時保留經過的小時數,請將小時計算為 INT(seconds/3600)、分鐘計算為 INT(MOD(seconds,3600)/60),秒數則計算為 MOD(seconds,60)。這種方法會將輸入視為經過的時間長度,而非時鐘讀值,因此當總時長超過一天時,仍會保留每一個完整小時。如果想要現成的結果,無須撰寫或維護工作表公式,秒數轉 HMS 轉換器可接受非負整數的經過秒數,並將其轉換為格式化的 HH:MM:SS 值。選擇 Convert to HH:MM:SS,檢查總小時、分鐘與秒數欄位,然後使用複製控制項,將精確的時間長度放入剪貼簿。對於多日總計,小時欄位刻意會維持高於 23,而分鐘與秒數則維持在 00 到 59 之間。此工具可接受 0 到 9,007,199,254,740,991 之間的精確整數值。它會拒絕小數,因為小數輸出需要另訂精確度規範;也會拒絕負值,因為輸出代表的是非負的經過時間間隔。

convert seconds to hh mm ss in excel
在 Excel 中將秒數轉換為 HH:MM:SS

為什麼總小時數不得循環歸零

HMS 代表小時、分鐘與秒數。進行時間長度轉換時,小時欄位代表已經過的完整小時總數,而非 24 小時制時鐘上的小時。當輸入包含整整一天或多天時,這項差別非常重要。時鐘式顯示會在 24 小時後重複,並遺失資訊;經過時間顯示則會持續向上累加。

算術運算遵循標準時間單位關係:BIPM SI 簡明摘要將 1 分鐘定義為 60 秒、1 小時定義為 3,600 秒,而 NIST — 使用 SI 單位撰寫則將秒指定為時間間隔的 SI 單位。這些定義確立了轉換方式,但不會將結果轉變為日期、時區或日曆時間戳記。

轉換器的一般小時值使用兩位數,分鐘與秒數則一律使用兩位數。必要時,小時數可以超過兩位數。如此一來,結果仍然容易閱讀,同時確保分鐘與秒數持續表示受各自正常循環界限限制的餘數欄位。

讀者需求 適合的輸出 重要差別
易讀的經過時間長度 小時總數不受限的 HH:MM:SS 保留每一個完整小時,而不會在 24 時歸零
在 Excel 中建立 literal 值 由 INT 與 MOD 公式產生的文字 容易複製,但不會以數值時間小數形式儲存
further 試算表計算 以 [h]:mm:ss 顯示的 Excel 日小數 顯示經過小時數的同時維持數值形式
具有獨立日欄位的目的地 天數加上 00–23 的時鐘欄位 日界必須另行表示
ISO 8601 目的地 該系統要求的時間長度語法 不得將冒號格式化的字串重新標示為 ISO 語法

在 Excel 中建立不會循環歸零的結果

  1. 將原始的非負整數以數值形式放在 A1 儲存格中。不要在儲存格內容加上 sec 或 seconds 之類的單位後綴。
  2. 在 B1 儲存格中輸入 =TEXT(INT(A1/3600),"00")&":"&TEXT(INT(MOD(A1,3600)/60),"00")&":"&TEXT(MOD(A1,60),"00")。這會傳回文字字串,其中小時部分直接取自完整輸入值。
  3. 檢查結果。分鐘與秒數是根據餘數計算,因此會維持在 00 到 59 之間,而小時文字則可持續超過 23。
  4. 若要轉換一整欄,請選取 B1,並向下拖曳填滿控制點。Excel 會針對每一列調整 A1 參照。
  5. 僅使用支援範圍內的非負整數值。在依賴精確的時間長度結果之前,請先移除或另行分類小數、負值,以及高於 9,007,199,254,740,991 的整數。

如果公式因為 Excel 安裝版本使用分號作為函式引數分隔符而回報引數錯誤,請將 INT、MOD 與 TEXT 內的逗號替換成分號。冒號文字與串接運算子維持不變。

讓 Excel 時間長度維持數值形式

當後續公式需要使用時間長度進行計算時,請使用日小數而非文字:

  1. 在另一個儲存格中輸入 =A1/86400,以一天的小數形式表示原始值。
  2. 開啟儲存格格式,選擇數值 tab,並選取自訂。
  3. 輸入格式代碼 [h]:mm:ss。
  4. 套用格式,並確認小時數會持續超過 23。h 外面的方括號很重要,因為它表示經過的小時數,而非時鐘欄位。

如果主要目標是可複製的 HH:MM:SS 字串,文字公式會很有用。如果時間長度必須保留供其他試算表算術運算使用,則自訂格式的日小數會更有用。

建立可複製的時間長度而無須使用公式

  1. 開啟秒數轉 HMS 轉換器,並輸入非負整數的經過秒數。
  2. 選擇 Convert to HH:MM:SS。
  3. 檢查明細卡,包括總小時欄位,以及剩餘的分鐘與秒數欄位。
  4. 選取複製按鈕,將精確的格式化時間長度放入剪貼簿,然後貼到所需的目的地。

格式化輸出適用於日誌、計時器、運動紀錄、媒體時間長度備註、工作執行時間、測試輸出,以及簡單的資料清理。將冒號格式化的結果貼入 Excel 時,如果儲存格必須精確保留該 literal 字串,請先將目的地儲存格格式化為文字;否則 Excel 可能會將其解讀為時鐘值。

逐步檢視一次多日轉換

對於原始值 98,765 秒,整數與餘數方法會依下列方式拆分總值:

  • 小時:floor(98,765 ÷ 3,600) = 27,剩餘 1,565 秒。
  • 分鐘:floor(1,565 ÷ 60) = 26,剩餘 5 秒。
  • 最後的秒數餘數:5 秒。

產生的時間長度為 27:26:05。時鐘式的 03:26:05 會捨去整整一天。轉換器會將這一天保留在總小時欄位中。結果也可以反向還原:27 × 3,600 + 26 × 60 + 5 = 98,765,因此原始的整秒總值會完全還原。

維持精確的整秒精度

轉換器以 floor(total seconds ÷ 3,600) 計算總小時數,從扣除這些小時後的餘數計算分鐘,並使用最後的餘數計算秒數。由於它使用整數除法與餘數,而非四捨五入的小數除法,因此格式化字串具有確定性,且不會出現浮點數尾數。

輸入上限是 JavaScript 的最大安全整數:9,007,199,254,740,991。該範圍內的每個整數值都能精確表示。較大的輸入可能造成相鄰整數被壓縮成相同的數值表示,進而可能產生不正確的最後秒數欄位。因此,轉換器寧可明確回報範圍錯誤,也不提供看似合理但不精確的答案。

輸入條件 轉換器行為 實務原因
介於 0 到 9,007,199,254,740,991 之間的非負整數值 接受 能精確拆分完整的經過值
高於安全整數上限的整數值 拒絕 無法再保證精確保留
小數或分數值 拒絕 需要額外的精度與分隔符規範
負值 拒絕 此工具表示非負時間間隔,而非帶正負號的偏移量
包含 24 小時或以上的時間長度 接受且不循環歸零 所有完整小時數都應納入總小時欄位

小數輸出不在此工具的範圍內,因為選擇小數位數、小數分隔符與四捨五入規則,會構成另一個格式問題。負時間間隔也不在其定義用途之內。進行媒體作業時,請從相關播放器或中繼資料檢查器取得時間長度並輸入該值;轉換器本身不會讀取媒體檔案。

結果只描述已指定的秒數。它不會解讀日期、時區、日光節約時間、閏秒或日曆月份,因為這些概念都不會改變所提供秒數的基本拆分方式。

讓結果符合目的地需求

當目的地需要簡潔、易讀的經過時間長度,而且總小時數應維持在單一欄位中時,請使用 HH:MM:SS 輸出。這適用於許多日誌、紀錄與時間長度備註,因為它能保留完整時間間隔,而不必引入獨立的日欄位。

如果接收系統要求天數加上 00–23 的時鐘欄位,請分別將總值拆分為這些部分,或使用專門設計為包含天數部分的時間長度格式化工具。如果目的地要求 ISO 8601 時間長度語法,請提供該系統所預期的語法,而不要將冒號格式化的字串重新命名。保留正確值也取決於選擇與不受限經過小時數之意義相符的目的地。