編按:Vlookup函數(shù)在使用中常出毛病找不到數(shù)據(jù)。很多人都會被“眼睛都看到有相同的,但是Vlookup就是找不到”弄得抓狂,虛耗半天時間。一些毛病是使用者功夫不到家,寫的公式存在錯誤造成的,譬如查找值不在查找區(qū)域的首列、查找區(qū)域錯誤、返回位置錯誤等等;一些毛病則是數(shù)據(jù)上有問題造成的。數(shù)據(jù)上的問題,有些很明顯,容易發(fā)現(xiàn),有些很隱蔽,不容易發(fā)現(xiàn)。今天的教程就是分享3條影響Vlookup正常工作的數(shù)據(jù)問題。
上周在我們的Excel交流群中連續(xù)有兩個同學(xué)問到Vlookup函數(shù)匹配不到的問題,它們的共同點(diǎn)是眼看數(shù)據(jù)是一樣的,公式又沒錯,但Vlookup函數(shù)就是查不到。這到底是為啥呢?
今天我們就總結(jié)一下如何排查VLOOKUP函數(shù)匹配不到的情況。注意我們這里指的是源數(shù)據(jù)與目標(biāo)區(qū)域數(shù)據(jù)手工能查找到,但是vlookup查找不到的情況。
第1種:格式作怪
下表是某電商客戶訂購商品的訂單號,現(xiàn)在需要根據(jù)訂單號匹配訂購的產(chǎn)品型號。我們通過VLOOKUP去查找時,所有單元格返回結(jié)果都為錯誤。
這是為啥呢?
其實(shí)觀察仔細(xì)的同學(xué)會發(fā)現(xiàn)原訂單號中單元格中有綠色三角,而目標(biāo)單元格沒有——這就是關(guān)鍵!
查找不到的原因就是因?yàn)閮蓚?cè)的單元格格式不同。左側(cè)訂單號為文本型單元格,單元格內(nèi)雖然看是數(shù)字,但實(shí)際上屬于文本字符。右側(cè)內(nèi)訂單號為常規(guī)數(shù)字。我們在D2單元格輸入公式=b2=f2,會發(fā)現(xiàn)結(jié)果返回FALSE,也就是b2不等于f2,所以VLOOKUP函數(shù)是無法匹配到。
處理方法:
選中所有訂單號數(shù)據(jù)后單擊左側(cè)感嘆號,選擇【轉(zhuǎn)換為數(shù)字】。
然后再用VLOOKUP函數(shù),結(jié)果正確:
請客吃飯才可能獲得的技巧:
如果數(shù)據(jù)量較大,通過這種方式轉(zhuǎn)換較為卡頓。我們可以通過在任意單元格輸入數(shù)字1,Ctrl+C復(fù)制1,然后選中訂單號全部數(shù)據(jù),按Ctrl+Alt+V(選擇性粘貼),選擇計(jì)算方式乘。這樣會快速完成文本到數(shù)字的轉(zhuǎn)換,并且不卡頓。
第2種:空格或可編輯的不可見字符作怪
第1種情況只要心不那么“大”的都能發(fā)現(xiàn)問題所在(因?yàn)橛芯G三角提示),而第2種就比較隱蔽了,很多Excel新手找不出問題:看似2個單元格一模一樣,通過VLOOKUP函數(shù)就是返回#N/A。
如下表所示,根據(jù)客戶購買的家電產(chǎn)品型號去查找匹配的價格,結(jié)果出現(xiàn)了無法匹配的情況:
遇到這種情況該如何處理呢?
其實(shí)很簡單,既然沒有綠三角提示,那先檢查字符數(shù)。兩種檢查方法:
第1種檢查方法:全選字符查看。
雙擊C2單元格進(jìn)入編輯狀態(tài),然后按下左鍵拖動選中單元格內(nèi)所有字符,我們看到正常的數(shù)據(jù)字符后還有幾個空格或者不可見字符。
第2種檢查方法:LEN函數(shù)檢查字符數(shù)。
建立輔助列,用公式=len(C2)返回字符數(shù),檢查源數(shù)據(jù)和目標(biāo)數(shù)據(jù)的字符數(shù)是否一樣:
字符數(shù)不一樣,就肯定存在空格或者不可見的字符等。
這種檢查方法很可靠,比第1種全選字符檢查可靠。
處理方法:
確定原因所在,然后通過TRIM函數(shù)批量將所有單元格內(nèi)空格刪除。
然后用處理后的數(shù)據(jù)替換原來的數(shù)據(jù)再進(jìn)行VLOOKUP查詢。
第3種:看不見也無法編輯的非打印字符作怪
有一種問題最隱蔽,不但新手抓狂,一些熟手剛遇上時也感到無從下手。譬如下面動圖所示,格式一樣,編輯中也感受不到空格或者其他字符的存在。
這是什么問題呢?
很多從某系統(tǒng)或者平臺中導(dǎo)出來的數(shù)據(jù)存在一些特殊的非打印字符,這些字符我們在excel單元格中不但看不到,而且即使雙擊單元格進(jìn)入編輯狀態(tài)全選字符也感覺不到它的存在。我們只能通過下面的檢查感受到它們:
第1種:LEN函數(shù)檢查字符數(shù)。
輸出函數(shù)后可以看到A2和D2的字符數(shù)不一致,A2是30個字符,D2是28個字符。
第2種:拷貝文本到記事本中查看字符。
單擊A2單元格,Ctrl+C拷貝,然后打開記事本Ctrl+V粘貼,效果如下:
同樣把D2拷貝粘貼到記事本,可以明顯看到區(qū)別,如下:
處理方法:
通過clean函數(shù)進(jìn)行數(shù)據(jù)清洗,將非打印字符刪除。此函數(shù)使用非常簡單,無需任何參數(shù),直接引用要處理的單元格即可。
在清理后的數(shù)據(jù)中用vlookup查找,結(jié)果正常:
總結(jié):
下面我們?yōu)榇蠹艺砹艘环蓐P(guān)于vlookup查找出現(xiàn)異常的處理流程圖,如下圖所示:
彩蛋:
然后再贈送給大家一個彩蛋:清理字符數(shù)不一致的萬用公式。
排除公式本身錯誤、單元格格式錯誤外,可以用=trim(clean(a2))公式清理字符,不論是空格、看不見的字符都可以清除。