錯誤代碼#VALUE!,判斷及解套方式_Excel技巧-010

更新日期:2019/10/13

「#VALUE!」錯誤代碼,常見的情況是參照位置選錯,或者是原始資料就是#VALUE!了。還有,另一種情況是找無指定的內容,例如:想在字串中找出「空白鍵」但是找無對應的內容,也會出現這種情況。


一、「#VALUE!」所代表的意思

微軟解說「#VALUE您輸入公式的方式錯誤。或,您參照的儲存格錯誤。這是非常一般的錯誤,且可能很難找到發生錯誤的確實原因。
簡單來說「選取儲存格搭配到文字和數字,或者原本的資料就有此錯誤發生。也有可能是其他的情況」

二、判斷及解套方式

● 判斷1:如何確認儲存格配到文字和數字?
<參考微軟:[SUM] 如何修正AVERAGE或SUM函數中的#VALUE!錯誤>

判斷方法:回到儲存格確認是否為「儲存格配到文字+數字」
解套方式:E4原本為「=B4*D4」
解套方式:E4修正為「=C4*D4」


● 判斷2:如何確認原本的資料就有此錯誤發生?
<參考微軟:[CONCATENATE] 如何修正CONCATENATE函數中的#VALUE!錯誤>

判斷方法:回推原始資料的銷量確認是否為「#VALUE」或是「確實無銷量」
解套方式:E5原本為「=D5*C5」
解套方式:E5修正為「=IFERROR(D5*C5,"-")


● 判斷3:如何確認原本的資料就有此錯誤發生?或如何直接忽略錯誤去執行計算?



判斷方法 :C7儲存格的資料本身就是錯誤代碼,所以字串串接的也是錯誤的。
解套方式a:需往前推去修正,因為是E5的儲存為錯誤碼,所以需先排除E5的錯誤。

解套方式a可參考判斷2的解法,基本上判斷2排除問題後,就能解決。

解套方式b:直接忽略錯誤,直接計算銷售金額總計。
(1)取消合併儲存格
(2)A9更新為「=CONCATENATE(D2,"年 - ",A2,"金額$",TEXT(SUM(IF(NOT(ISERR(D4:D6)),D4:D6)),"#,###"))
(3)最後要產生陣列,(2)輸入完後先別按Enter,請按Ctrl+Alt+Shift,接著會出現{}包住公式
{=CONCATENATE(D2,"年 - ",A2,"金額 $",TEXT(SUM(IF(NOT(ISERR(D4:D6)),D4:D6)),"#,###"))}

解套方式b完成


補充:C7的錯誤代碼可用此公式來計算「{=TEXT(SUM(IF(NOT(ISERR(D4:D6)),D4:D6)),"#,###")}」
*步驟與解套方式b是一樣的,可參考上述的順序。

KNB碎碎唸:
KNB常碰到的是上述分享的兩種狀況,產生#VALUE!錯誤代碼不單是這兩種情況。
一般大多把這兩種狀況排除大概就可以解決7~8成左右的錯誤碼。

延伸閱讀:
1. 2019/04/20 Excel函數-005_concatenate-相容
2. 2019/06/09 Excel函數-027_iferror-邏輯
3. 2019/06/16 Excel函數028_isna-資訊
4. 2019/07/21 Excel技巧019-_Excel錯誤代碼總整理