Vlookup函數(shù)是一個非常好用的查找函數(shù),但由于種種原因,實際使用時會遇到種種讓人搞不明白的錯誤,本文對各種常見錯誤進行總結(jié)并介紹相關(guān)解決方法。文章比較長,可以收藏起來慢慢看。
... 1
一、函數(shù)參數(shù)使用錯誤... 1
1、第2個參數(shù)區(qū)域設(shè)置錯誤之1. 1
2、第2個參數(shù)區(qū)域設(shè)置錯誤之2. 2
3、第4個參數(shù)少了或設(shè)置錯誤。... 3
4、看似模糊查找實則精確查找... 3
二、數(shù)字格式不同,造成查找錯誤... 4
5、查找為數(shù)字,被查找區(qū)域為文本型數(shù)字。... 4
6、查找格式為文本型數(shù)字,被查找區(qū)域為數(shù)值型數(shù)字。... 5
三、引用方式使公式復(fù)制后產(chǎn)生錯誤。... 6
7、沒有正確的使用引用方式,造成在復(fù)制公式后區(qū)域發(fā)生變動引起錯誤。... 6
四、多余的空格或不可見字符... 6
8、數(shù)據(jù)表中含有多余的空格。... 7
9、類空格但非空格的字符。... 7
10、不可見字符的影響。... 8
11、反向查找vlookup不支持產(chǎn)生的錯誤。... 9
12、通配符引起的查找錯誤。... 10
13、vlookup函數(shù)第1個參數(shù)不直接支持數(shù)組形式產(chǎn)生的錯誤... 11
五、跨表引用不同版本引用無效... 11
14、在Excel2003版本引用Excel2007或者以上版本提示無效。... 11
六、單元格格式設(shè)置錯誤公式顯示不了結(jié)果... 12
15、單元格只顯示公式不顯示公式結(jié)果。... 12
例:如圖1所示,根據(jù)姓名查找齡時產(chǎn)生錯誤。
圖 1
錯誤原因: vlookup函數(shù)第2個參數(shù)是查找區(qū)域,該區(qū)域的第1列有一個必備條件,就是查找的對象(A9),必須對應(yīng)于區(qū)域的第1列。本例中是根據(jù)姓名查找的,那么,第二個參數(shù)姓名必須是在區(qū)域的第1列位置,而上述公式中姓名列是在區(qū)域A1:E6的第2列。所以公式應(yīng)改為:=VLOOKUP(A9,B1:E6,3,0)
例2 如圖2所示根據(jù)姓名查找職務(wù)時產(chǎn)生查找錯誤。
圖 2
錯誤原因:本例是根據(jù)姓名查找職務(wù),可大家注意一下,第2個參數(shù)B1:D6根本就沒有包括E列的職務(wù),當(dāng)然會產(chǎn)生錯誤了。所以公式應(yīng)改為:=VLOOKUP(A9,B1:E6,4,0)
例3,如圖3所示根據(jù)工號查找姓名。
圖 3
錯誤原因:vlookup第4個參數(shù)為0時表示精確查找,為1或省略時表示模糊查找。如果忘了設(shè)置第4個參數(shù)則會被公式誤以為是故意省略,按模糊查找進行。當(dāng)區(qū)域也不符合模糊查找規(guī)則時,公式就會返回錯誤值。所以公式應(yīng)改為=VLOOKUP(A9,A1:D6,2,0)
或 =VLOOKUP(A9,A1:D6,2,) 注:當(dāng)參數(shù)為0時可以省略,但必須保留“,”號。
例4,通過簡稱或關(guān)鍵字模糊匹配查找全稱
如圖4,要看B列的游戲名稱在A列是否存在,B列游戲名稱是A列的一部分,在B列游戲名稱前后加上通配符*,再用Vlookup查找,C2公式=Vlookup(''*''&B2&''*'',$A$1:$A$10,1,0),注意,這里最后一個參數(shù)要用0,精確查找,很多人誤以為是模糊匹配最后一個參數(shù)為1。從要查找的內(nèi)容看是模糊匹配,但是從公式看是精確查找。
圖 4
例5:如下圖所示根據(jù)工號查找姓名,查找出現(xiàn)錯誤。
圖 5
錯誤原因:在vlookup函數(shù)查找過程中,文本型數(shù)字和數(shù)值型數(shù)字會被認為不同的字符。所以造成無法成功查找。
解決方案:把查找的數(shù)字在公式中轉(zhuǎn)換成文本型,然后再查找。即:
=VLOOKUP(A9&'''',A1:D6,2,0)
或者用分列,前2步默認,第3步把常規(guī)改為文本。
圖 6
例6:如圖7所示根據(jù)工號查找姓名,查找出現(xiàn)錯誤。
圖 7
錯誤原因:同5
解決方法:把文本型數(shù)字轉(zhuǎn)換成數(shù)值型。即:
=VLOOKUP(A9*1,A1:D6,2,0)
或者直接選中要轉(zhuǎn)換為數(shù)值的單元格或區(qū)域,點擊下拉框的轉(zhuǎn)換為數(shù)字。
圖 8
文本與數(shù)字的相互轉(zhuǎn)換方法請點擊批量文本格式與數(shù)字格式的相互轉(zhuǎn)換
例7,如圖9所示,當(dāng)C9的公式復(fù)制到C10和C11后,C10公式返回錯誤值。
圖 9
錯誤原因:由于第二個參數(shù)A2:D6是相對引用,所以向下復(fù)制公式后會自動更改為A3:D7,而A10中的工號A01所在的行,不在A3:D7區(qū)域中,從而造成查找失敗。
解決方案:把第二個參數(shù)的引用方式由相對引用改為絕對引用即可。
B9公式改為:=VLOOKUP(A9,$A$2:$D$6,2,0)
例8, 如圖10所示,由于A列工號含有多余的空格,造成查找錯誤。
圖 10
錯誤原因:多一個空格,用不帶空格的字符查找當(dāng)然會出錯了。
解決方案: 1、手工替換掉空格。建議用這個方法。
2、在公式中用trim函數(shù)替換空格而必須要用數(shù)據(jù)公式形式輸入。
即:=VLOOKUP(A9,TRIM(A1:D6),2,0) 按【Ctrl Shift Enter】輸入后數(shù)組形式為{=VLOOKUP(A9,TRIM(A1:D6),2,0)}
在表格存在大量的“空格”,但又用空格無法替換掉時,這些就是類空格的不可見字符,這時可以“以其人之道還之其人之身”,直接在單元格中復(fù)制不可見字符粘貼到替換窗口,替換即可。
圖 11
例: 如圖12所示的A列中,A列看上去不存在空格和類空格字符,但查找結(jié)果還是出錯。我們可以用exact函數(shù)判斷單元格內(nèi)容是否完全一致,當(dāng)返回結(jié)果為true,表示結(jié)果完全相同,當(dāng)結(jié)果為false,表示單元格內(nèi)容不完全一致。
圖 12
公式=exact(A4,B9)返回結(jié)果為false,說明表面看上去內(nèi)容相同的A4和B9單元格實際上內(nèi)容不一致?;蛘卟挥胑xact函數(shù),直接用公式=A4=B9。
出錯原因:這是從網(wǎng)頁或數(shù)據(jù)庫中導(dǎo)入數(shù)據(jù)時帶來的不可見字符,造成了查找的錯誤。
解決方案:在A列后插入幾列空列,然后對A列進行分列操作(數(shù)據(jù)→分列),即可把不可見字符分離出去。
圖 13
例10 如圖14所示的表中,根據(jù)姓名查找工號,結(jié)果返回了錯誤。
圖 14
錯誤原因:vlookup不支持反向查找。
解決方法:
1、 用if函數(shù)重組區(qū)域,讓兩列顛倒位置,或者直接通過復(fù)制粘帖把兩列位置互換。
=VLOOKUP(D8,IF({0,1},D2:D4,E2:E4),2,0)
要將Excel兩列位置互換,除了復(fù)制粘帖還有更簡單的方法嗎?
2、 用index match組合實現(xiàn)。
=INDEX(D2:D4,MATCH(D8,E2:E4,0))
例12,如圖15所示,根據(jù)區(qū)間查找提成返回錯誤值。
圖 15
錯誤原因:~用于查找通配符,如果在vlookup公式中出現(xiàn),會被認為特定用途,非真正的~。如在表格中查找3*6 ,356,376也被查找到。
圖 16
如果精確查找3*6,需要使用~,如圖17所示。
圖 17
解決方法:用~~就可以表示查找~了。所以公式可以修改為
=VLOOKUP(SUBSTITUTE(A8,''~'',''~~''),A2:B4,2,0)
例13:如圖18所示,同時查找A和C產(chǎn)品的和,然后用SUM求和。
圖 18
錯誤原因: VLOOKUP第一個參數(shù)不能直接用于數(shù)組。
解決方法:利用N/T IF結(jié)構(gòu)轉(zhuǎn)化一下數(shù)組,公式修改為:
=SUM(VLOOKUP(T(IF({1},A8:B8)),A2:B5,2,))
或者用sumif函數(shù)解決,公式為=SUM(SUMIF(A2:A5,{''A'',''C''},B2:B5))
例如, 工作簿1 要查找的數(shù)據(jù)是Excel 2003 版本, 數(shù)據(jù)源在工作簿2, 版本為
Excel 2007 或者以上版本,在工作簿1 的B2 單元格輸入公式=Vlookup(A2,[ 工作簿2]
Sheet1!$A:$B,2,0),提示如圖19所示的錯誤:
圖 19
如果公式改為=Vlookup(A2,[ 工作簿2]Sheet1!$A$1:$B$65536,2,0) 則不會提示錯誤,
這是因為Excel 2003 版本最多只能承載256 列65536行數(shù)據(jù),而Excel2007 或者以上版本可以承載1048576 行16384 列數(shù)據(jù),當(dāng)數(shù)據(jù)源引用的行數(shù)超過了要查找的數(shù)據(jù)所在工作表最多能承載的行數(shù)時,引用就無效了。
解決方法:把低版本的Excel文件轉(zhuǎn)換為高版本的文件,點擊左上方的文件或office按鈕,可以看到下面這個選項,點擊轉(zhuǎn)換,就可以把2003版本的文件轉(zhuǎn)換為2007或以上版本的文件。
圖 20
如圖21單元格公式?jīng)]有問題,但是無法顯示結(jié)果,按
【Ctrl 1】進入設(shè)置單元格格式,顯示文本,當(dāng)單元格格式為文本格式,只顯示公式不顯示結(jié)果。這個不僅僅對vlookup函數(shù)是這樣的,其他函數(shù)也如此。
圖 21
圖 22
聯(lián)系客服