Google 試算表: 數字轉成文字

因為需要檢查一批資料,是不是都是數字。利用 REGEXMATCH 函式檢查,儘管原始資料是數字,卻出現 #VALUE! 和以下的錯誤訊息:
「REGEXMATCH 函式第 1 參數」需要文字值,但「123456789」是數字,無法強迫成為文字。」

解決方法:

解決方法 1

在資料最前面加個空字串 "",即可轉成文字。使用 CONCATENATE 函式 (同 CONCAT 函式) 或 & 符號,將空字串與欄位值黏在一起:
= CONCATENATE("", 123456789) 
 或 = CONCAT("", 123456789) 

 或 = "" & 123456789

空字串改成放在欄位值資料的最後面,也可以達到相同效果。
= 123456789 & ""

解決方法 2. 

使用 TEXT 函式
= TEXT(123456789, 0)
要注意第二個變數 0,如果數字包含小數點,則需要調整第二個變數,否則資料會失真。


解決方法 3

將儲存格格式從「自動」改成「純文字」

解決方法 4

在原始資料最前面加上單引號 ' ,即可轉成文字。例如
原始資料 123456789
修改成 '123456789

線上直接操作 (開啟表格到新視窗)



錯誤原因:

Google文件提到 REGEXMATCH 函示
此函式僅接受輸入文字 (而非數字),並傳回文字做為輸出結果。如果您希望系統傳回數字,請在使用此函式時一併使用 VALUE 函式。如果要以數字做為輸入值,請先使用 TEXT 函式將其轉換為文字。 

參考資料:



備註: 英文版的錯誤訊息是 Error
Function REGEXMATCH parameter 1 expects text values. But '123456789' is a number and cannot be coerced to a text.

留言

張貼留言