嘿,第七篇文章我們來解決一個超多人遇到的問題——VLOOKUP 出現 #N/A!
明明公式看起來沒錯,但就是抓不到資料,出現惱人的 #N/A 錯誤,讓整張表格看起來髒髒的。
今天不只教你為什麼會這樣,還教你用 IF 和 IFNA 把錯誤變不見!
先看一個真實案例
假設你有兩張表:
員工基本資料(Sheet1):
| A欄 (員工編號) | B欄 (姓名) |
|---|---|
| A001 | 王小明 |
| A002 | 李小華 |
| A003 | 張美美 |
業績記錄表(Sheet2):
| A欄 (員工編號) | B欄 (業績) | C欄 (姓名) |
|---|---|---|
| A001 | 50,000 | =VLOOKUP(A2, Sheet1!A:B, 2, 0) |
| A002 | 45,000 | =VLOOKUP(A3, Sheet1!A:B, 2, 0) |
| A003 | 60,000 | =VLOOKUP(A4, Sheet1!A:B, 2, 0) |
| A004 | 55,000 | =VLOOKUP(A5, Sheet1!A:B, 2, 0) |
看到 A004 這一行了嗎?因為員工基本資料沒有 A004,所以 C5 就會出現醜醜的 #N/A!

△ 圖1:VLOOKUP 抓不到資料時會出現 #N/A
為什麼會出現 #N/A?
#N/A 代表「找不到資料」。最常見的原因有:
- 🔍 真的沒有這筆資料(如上例的 A004)
- 🔍 前後有空格(例如「A001」和「A001 」不一樣)
- 🔍 全形半形問題(台灣常遇到,例如英數字全形)
- 🔍 查詢值格式不同(一個是文字,一個是數字)
微軟官方有詳細的 #N/A 錯誤說明 [微軟:如何修正 #N/A 錯誤]。
方法一:用 IF + ISNA 把 #N/A 變不見

△ 圖2:用 IF + ISNA 把 #N/A 變成「查無資料」
用 IF 搭配 ISNA,可以判斷 VLOOKUP 的結果是不是 #N/A:
=IF(ISNA(VLOOKUP(A5, Sheet1!A:B, 2, 0)), "查無資料", VLOOKUP(A5, Sheet1!A:B, 2, 0))
這個公式的意思是:
- 如果 VLOOKUP 的結果是 #N/A → 顯示「查無資料」
- 否則 → 顯示 VLOOKUP 抓到的姓名
修改後的表格:
| A欄 (員工編號) | B欄 (業績) | C欄 (姓名) |
|---|---|---|
| A001 | 50,000 | 王小明 |
| A002 | 45,000 | 李小華 |
| A003 | 60,000 | 張美美 |
| A004 | 55,000 | 查無資料 |
這樣表格就乾淨多了!
方法二:用 IFNA 更簡單(Excel 2013 以上適用)
如果你用的 Excel 是 2013 以上的版本,有更簡單的 IFNA 函數:
=IFNA(VLOOKUP(A5, Sheet1!A:B, 2, 0), "查無資料")
IFNA 專門用來處理 #N/A,如果是其他錯誤(如 #VALUE!)就不會處理。
微軟官方有 IFNA 函數的詳細教學 [微軟:IFNA 函數]。
方法三:先把空格清乾淨(TRIM 函數)
台灣很常見的問題:資料裡有看不見的「全形空格」或「前後空格」。
用 TRIM 函數把空格清掉:
=VLOOKUP(TRIM(A5), Sheet1!A:B, 2, 0)
或者用 CLEAN 清掉非列印字元:
=VLOOKUP(CLEAN(TRIM(A5)), Sheet1!A:B, 2, 0)
快问快答:台灣讀者常問的問題
- 😕 為什麼我 TRIM 了還是 #N/A?
可能是全形半形問題。用=CODE(MID(A5,1,1))檢查第一個字的字元碼,全形數字的字元碼和半形不一樣。 - 🤔 ISNA 和 IFNA 哪個好?
如果你的 Excel 版本夠新,IFNA 比較簡單;如果要用舊版 Excel,就必須用 IF + ISNA。 - 😫 還有其他錯誤類型嗎?
有!#VALUE!、#REF!、#NAME?等等。IFNA 只處理 #N/A,想處理所有錯誤要用 IFERROR。
練習一下
打開 Excel,建立以下兩張表:
產品價格表:
| 產品代碼 | 價格 |
|---|---|
| P001 | 100 |
| P002 | 200 |
| P003 | 150 |
訂單記錄表:
| 產品代碼 | 數量 | 價格 |
|---|---|---|
| P001 | 5 | |
| P002 | 3 | |
| P004 | 2 |
練習目標:
- 用 VLOOKUP 抓取價格(會發現 P004 出現 #N/A)
- 用 IFNA 把 #N/A 改成「停售」
答案: =IFNA(VLOOKUP(A2, 產品價格表!A:B, 2, 0), “停售”)
下一篇預告:比對兩個表格資料不一樣
學會處理 VLOOKUP 錯誤後,下一篇我們要來做更實用的——比對兩個表格資料不一樣!
📚 延伸閱讀
- 👉 VLOOKUP 從零開始
- 👉 IF 函數入門
- 👉 絕對參照 vs 相對參照
💡 學 Excel 真的不難,來這裡,學就好。―― 小就