在 Excel 中處理匯入資料或跨語系格式時,常會遇到文字型數字無法正確轉換的問題。NUMBERVALUE 函數能依指定的分隔符與地區格式,將代表數值的文字字串轉換為真正的數值格式,特別適合處理歐洲格式(如使用逗號作小數點)或混合符號的資料。它是資料清理、欄位標準化與報表計算前的精準轉換工具。
🔹快速摘要(語法、用途、常見場景)
- 用途:依指定格式將文字型數字轉換為數值
- 語法:
=NUMBERVALUE(文字, [小數點符號], [千位分隔符])
- 常見場景:跨語系資料清理、歐洲格式轉換、匯入欄位標準化、報表計算前格式處理
一、NUMBERVALUE 函數語法與用途:格式導向的數值轉換工具
語法:
=NUMBERVALUE(text, [decimal_separator], [group_separator])
- text:要轉換的文字字串
- decimal_separator(可選):小數點符號(如「.」或「,」)
- group_separator(可選):千位分隔符(如「,」或「.」)
- 回傳結果為對應的數值,依指定格式解析
NUMBERVALUE("1.234,56", ",", ".")
回傳 1234.56
。二、範例教學:五個基礎 + 五個進階範例
🔸基礎範例
範例一:將英文格式文字轉為數值
=NUMBERVALUE("1234.56")
回傳 1234.56
。
範例二:處理歐洲格式(逗號為小數點)
=NUMBERVALUE("1234,56", ",", ".")
回傳 1234.56
。
範例三:處理含千位分隔符的文字
=NUMBERVALUE("1.234,56", ",", ".")
回傳 1234.56
。
範例四:處理儲存格內容
=NUMBERVALUE(A1, ",", ".")
將 A1 中的歐洲格式文字轉為數值。
範例五:處理空白或無效文字
=NUMBERVALUE("", ".", ",")
回傳 #VALUE!
錯誤。
🔸進階範例
範例六:搭配 SUBSTITUTE 清除貨幣符號後轉換
=NUMBERVALUE(SUBSTITUTE(A1,"€",""), ",", ".")
移除歐元符號後轉換為數值。
範例七:搭配 TEXT 將數值格式化為文字後再轉回
=NUMBERVALUE(TEXT(A1,"#,##0.00"), ".", ",")
格式化後再轉回數值。
範例八:搭配 IF 判斷是否為有效數值
=IF(ISNUMBER(NUMBERVALUE(A1, ",", ".")), "有效", "無效")
判斷轉換結果是否為數值。
範例九:批次處理整欄資料(動態陣列)
=MAP(A2:A100, LAMBDA(x, NUMBERVALUE(x, ",", ".")))
將 A2:A100 中每列歐洲格式文字轉為數值(Excel 365)。
範例十:處理混合格式欄位
=IF(ISNUMBER(VALUE(A1)), VALUE(A1), NUMBERVALUE(A1, ",", "."))
先嘗試 VALUE,失敗則使用 NUMBERVALUE。
三、常見問題解答(FAQ)
Q1:NUMBERVALUE 和 VALUE 有何差異?
NUMBERVALUE 可自訂小數點與千位分隔符,VALUE 依系統語言設定解析。
Q2:NUMBERVALUE 可以處理中文嗎?
可以,但僅限於數字部分,無法解析中文文字。
Q3:NUMBERVALUE 可以處理日期嗎?
不行,僅限於數值格式的文字。
Q4:NUMBERVALUE 可以處理整欄資料嗎?
可以,搭配 MAP 或拖曳填滿即可批次處理。
Q5:NUMBERVALUE 可以搭配哪些函數使用?
常見搭配 SUBSTITUTE、TEXT、ISNUMBER、MAP、LAMBDA、IF 等。
四、注意事項與錯誤排除
- 若文字格式無法解析為數值,會回傳
#VALUE!
- 若分隔符設定錯誤,可能導致解析失敗
- 中文或混合文字無法轉換為數值
- 建議搭配錯誤防呆邏輯處理空白或格式異常輸入
- 適用於跨語系資料清理,尤其是歐洲格式(如「1.234,56」)
五、延伸技巧與相關函數
1. SUBSTITUTE 函數 與 NUMBERVALUE 的連動應用:可先移除貨幣符號、單位或逗號,再進行數值轉換,例如 NUMBERVALUE(SUBSTITUTE(A1,"€",""), ",", ".")
。
2. TEXT 函數 與 NUMBERVALUE 的連動應用:可將格式化後的文字再轉回數值,例如 NUMBERVALUE(TEXT(A1,"#,##0.00"), ".", ",")
。
3. ISNUMBER 函數 與 NUMBERVALUE 的連動應用:可用來驗證轉換結果是否成功,例如 ISNUMBER(NUMBERVALUE(A1, ",", "."))
。
4. MAP / LAMBDA 函數 與 NUMBERVALUE 的連動應用:可批次轉換整欄歐洲格式文字型數字為數值,例如 MAP(A2:A100, LAMBDA(x, NUMBERVALUE(x, ",", ".")))
。
5. IF 函數 與 NUMBERVALUE 的連動應用:可根據轉換結果進行提示或錯誤處理,例如 IF(ISNUMBER(NUMBERVALUE(A1, ",", ".")), "有效", "錯誤")
。
這些函數能與 NUMBERVALUE 組合成一套完整的「格式清理 → 強制轉換 → 驗證 → 錯誤提示 → 批次處理」流程,特別適用於跨語系報表設計、資料匯入清理與欄位標準化等場景。
六、結語與延伸閱讀推薦
NUMBERVALUE 函數是 Excel 中專門處理跨語系數值格式的轉換工具,適合用在匯入資料清理、歐洲格式處理、報表欄位標準化與公式運算前的預處理。學會 NUMBERVALUE 後,你可以進一步探索以下函數,建立更完整的資料清理與格式轉換流程:
- [VALUE 函數教學]:處理一般文字型數字的轉換,適用於本地語系資料
- [SUBSTITUTE 函數教學]:移除貨幣符號、單位或格式雜訊,搭配 NUMBERVALUE 使用效果最佳
- [TEXT 函數教學]:將數值格式化為文字,或將文字格式統一後再進行轉換
- [MAP 函數教學]:批次處理整欄資料,適合大量欄位的格式清理與轉換
- [ISNUMBER 函數教學]:判斷轉換結果是否為有效數值,可用於錯誤防呆與提示設計