因為需要檢查一批資料,是不是都是數字。利用 REGEXMATCH 函式檢查,儘管原始資料是數字,卻出現 #VALUE! 和以下的錯誤訊息:
備註: 英文版的錯誤訊息是 Error
Function REGEXMATCH parameter 1 expects text values. But '123456789' is a number and cannot be coerced to a text.
「REGEXMATCH 函式第 1 參數」需要文字值,但「123456789」是數字,無法強迫成為文字。」
解決方法:
解決方法 1.
在資料最前面加個空字串 "",即可轉成文字。使用 CONCATENATE 函式 (同 CONCAT 函式) 或 & 符號,將空字串與欄位值黏在一起:
= CONCATENATE("", 123456789)
或 = CONCAT("", 123456789)
空字串改成放在欄位值資料的最後面,也可以達到相同效果。或 = "" & 123456789
= 123456789 & ""
解決方法 2.
在原始資料最前面加上單引號 ' ,即可轉成文字。例如
線上直接操作 (開啟表格到新視窗)
原始資料 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.
謝謝
回覆刪除