跳到主要內容跳到頁尾

文字變數字、變日期、變時間:VALUE、DATEVALUE、TIMEVALUE 一次查

5 分鐘閱讀Lv.3 中級摘要與日期

VALUE 把看起來像數字的文字轉成數字、DATEVALUE 轉成日期序號、TIMEVALUE 轉成一天的分數。每個函式附語法、算出來的結果、哪些字串會 #VALUE!,以及已經是數字想換格式時該去看哪一篇。

發布 更新

文章目錄

從別的系統匯出來的資料,常常有「看起來是數字,其實是文字」的格子,加總是 0、排序亂掉、日期不能加減。今天整理三個把文字轉回來的函式,VALUE、DATEVALUE、TIMEVALUE。

這三個函式在別篇都順帶出現過,這篇把它們各自放在一個段落,方便直接查語法和結果。我自己最常用的是 VALUE,DATEVALUE 偶爾,TIMEVALUE 只有處理打卡紀錄的時候才會碰。

怎麼選

先搞清楚手上的格子是文字還是真的數字。數字和日期預設靠右、文字預設靠左,更確定的是用 ISNUMBER 問:,文字會得到 FALSE。為什麼同樣的「100」會有文字和數字兩種,在 儲存格的值與顯示格式 有講。

手上的文字用哪個得到的是
「1,665」「37%」VALUE數字
「2026/10/11」DATEVALUE日期序號
「14:35:48」TIMEVALUE0 到 1 的小數

如果手上已經是數字,只是想換成日期、貨幣、百分比的樣子,那是 TO_DATE、TO_DOLLARS、TO_PERCENT 這一組,不在這篇,看 TO_ 系列函式。要把數字轉成「文字」則是 TO_TEXT 或 TEXT,同一篇和 TEXT 格式碼進階 有講。

文字轉數字

VALUE

VALUE 把試算表認得的數字、日期、時間文字轉成數字。

語法:

  • 文字:要轉換的字串,直接打要加雙引號,也可以參照儲存格。

我想把「1,665」和「280」這兩段文字加起來,如果要用 VALUE 寫,就是:

Google 試算表公式
fx

兩段文字數字轉成數字再相加

=VALUE("1,665")+VALUE("280")

先手算:1665 加 280 是 1945。來看看結果:

公式結果
1665
0.37
46306
1945

千分位逗號會被認得,百分比會變成小數,連日期文字也能轉,結果是日期的序號。序號是從 1899/12/30 起算的天數,2026/10/11 是第 46306 天,這個在 日期與時間入門 有講。

注意事項:

  • 試算表認不得的字串會得到 #VALUE!,像 ,後面的「元」轉不了。要先把單位拿掉,做法在 文字清理函式。
  • 看起來完全正常卻轉不了的,多半藏著不可見的字元,也是先清理再轉。例如尾端多了一個不換行空格(CHAR(160)),VALUE 就會是 #VALUE!,要先用 SUBSTITUTE 換掉。
  • 貨幣符號跟著試算表的地區設定走:地區設定為台灣時, 得到 1200,單純的 $1,200 反而是 #VALUE!。
  • 大量資料的話,可以用 ARRAYFORMULA 包起來一次轉整欄。

文字轉日期與時間

DATEVALUE

DATEVALUE 把「看起來像日期」的文字轉成日期序號,轉完才能加減和比較。

語法:

  • 日期字串:試算表認得的日期格式,要加雙引號,或參照一個文字儲存格。

我想把文字日期「2026/09/28」往後推 30 天,結果轉成「yyyy/mm/dd」的樣子顯示:

Google 試算表公式
fx

文字日期加 30 天,再格式化顯示

=TEXT(DATEVALUE("2026/09/28")+30, "yyyy/mm/dd")

9 月 28 日再過 30 天是 10 月 28 日。來看看結果:

公式結果
46306
46297
2026/10/28

斜線和連字號的寫法都認得。DATEVALUE 直接回傳的是序號,要看到日期的樣子,把儲存格的格式設成日期,或像上面用 TEXT 包起來,不過包了 TEXT 之後它又變成文字了,不能再拿去算。

注意事項:

  • 「20261011」這種連在一起的八位數字不認得,會得到 #VALUE!。要用 LEFT、MID、RIGHT 拆開,再用 DATE 組起來。
  • 民國年也不要直接丟進去。「115/10/11」這種寫法,我是用 DATE 自己組:,得到 2026/10/11。
  • 同一件事要小心的是,DATE 的年份填 0 到 1899 會自動加上 1900,所以 是 2015/10/11,不是民國 115 年。一定要先加 1911。
  • 「10/11/2026」這類月日順序不明確的寫法,要看試算表的語言與地區設定,不同設定會有不同解讀。例如地區設定為台灣時, 會被當成「日/月/年」,得到 2026/11/10,不是 10 月 11 日。我寧願資料先整理成年月日再轉。

TIMEVALUE

TIMEVALUE 把「看起來像時間」的文字轉成一天的分數。

語法:

  • 時間字串:像 "14:35:48" 這樣的時間文字,要加雙引號,或參照一個文字儲存格。

我想知道文字時間「14:35:48」到底是一天的多少:

Google 試算表公式
fx

文字時間轉成一天的分數

=TIMEVALUE("14:35:48")

先手算:14 小時 35 分 48 秒是 52548 秒,一天有 86400 秒,52548 除以 86400 約 0.608194。來看看結果:

公式結果
0.5
0.75
0.608194

中午 12 點剛好過了半天,傍晚 6 點是四分之三天。

轉成分數之後,兩個文字時間就能相減。我想算上班 09:15、下班 18:40 差幾個小時,乘 24 換成小時,再取到小數第 2 位:

Google 試算表公式
fx

兩個文字時間相減,換成小時

=ROUND((TIMEVALUE("18:40")-TIMEVALUE("09:15"))*24, 2)
公式結果
09:15 到 18:409.42

565 分鐘是 9 小時 25 分,也就是 9.4167 小時,取到小數第 2 位是 9.42。換成分鐘要乘 1440,換成秒要乘 86400。整份打卡紀錄怎麼算工時、跨午夜怎麼辦,在 時間函式整理。

動手練習

1

文字日期加 45 天

有一格文字日期「2026/09/28」,我想知道 45 天之後是幾月幾日,結果要顯示成 yyyy/mm/dd 的樣子。請寫出公式。

下次拿到匯出的檔案,先用 ISNUMBER 看一眼是文字還是數字,再決定要用哪一個吧!我是喜特先生,Mr. Sheet,我們下個教學見!

分享:
#VALUE#DATEVALUE#TIMEVALUE#資料清理
喜特先生 Mr. Sheet

喜特先生 Mr. Sheet

數據分析師/商業分析師

八年工作經驗,跨不同業界解決數據需求。做過的案例都整理在作品集。

接下來可以

相關文章

查看所有文章

留言討論

共 0 則留言

訂閱電子報,新文章上線就通知你

免費,隨時可取消。

送出即表示同意服務條款與隱私權政策。