在處理試算表時,日期格式不一是常見的困擾。不同人員可能輸入「2023.05.20」、「20230520」或「2023-05-20」等各種格式,導致無法直接進行排序、篩選或日期運算。本文將以 WPS 表格為例,詳細介紹如何利用函數快速將混亂的文本日期與數值日期統一轉換為標準日期格式,並套用統一顯示樣式。
首先選取日期所在欄(如 D 欄),點擊工具列的「升序排列」。這會將資料自動分為三類:文本日期(如 78.2.3)、數值日期(如 20090201)與標準日期。接著在 D 欄右側插入一個新欄位(E 欄),並預先設定好想要的日期顯示格式(右鍵「設定儲存格格式」→「日期」)。標準日期無需處理,僅需針對前兩類資料進行轉換。

圖 1:原始資料範例

圖 2:設定輔助欄日期格式
針對如「09.2.3」、「2009.1.25」等以句點分隔的文本日期,在 E2 輸入公式:
=VALUE(SUBSTITUTE(D2, "。", "-"))
說明:SUBSTITUTE 將全形句點「。」替換為連字號「-」,再由 VALUE 轉為數值(Excel/ WPS 內部以序列值儲存日期)。向下填充公式即可獲得標準日期序列值,配合欄位格式顯示為日期。

圖 3:文本日期轉換結果
針對 8 位數字格式(如 20090201、980201),在對應的 E 欄儲存格輸入:
=VALUE(TEXT(D11, "##00-00-00"))
說明:TEXT 依照「##00-00-00」模板將數字轉為「2009-02-01」形式的文本,再由 VALUE 轉為日期數值。向下填充即可完成轉換。

圖 4:數值日期轉換結果
若不想分步驟,可在 E2 輸入巢狀 IF 公式:
=IF(ISERROR(VALUE(TEXT(D2,"##00-00-00"))), IF(ISERROR(VALUE(SUBSTITUTE(D2,"。","-"))), D2, VALUE(SUBSTITUTE(D2,"。","-"))), VALUE(TEXT(D2,"##00-00-00")))
邏輯:先嘗試按數值格式轉換,失敗則嘗試文本替換轉換,皆失敗則保留原值。雙擊填充柄向下複製,即可一次處理所有格式。但公式較長且難維護,建議僅於需即時轉換的情境使用。
掌握這些技巧,即可輕鬆解決 WPS 表格中日期格式混亂的問題,大幅提升資料整理效率。