小A制作了一份表格。A:B列是數(shù)據(jù)明細(xì)。其中A列是員工的工號,B列是工資。每當(dāng)有員工把工資領(lǐng)取了,它就把該員工的工號和工資填寫在這兩列。
D:E列是前來領(lǐng)取工資人的信息。D列是工號,E列有一個VLOOKUP函數(shù)公式:
=IFERROR(VLOOKUP(D2,A:B,2,0),”還沒領(lǐng)”)
該函數(shù)的意思是,如果A列找不到D列的工號,就說明該員工未領(lǐng)工資,如果找到了工號,就返回已領(lǐng)取的工資。
小A覺得自己設(shè)計的這份表格思路和函數(shù)應(yīng)用都挺好,就有點小開心小驕傲。
然后VLOOKUP那個該死的BUG就來了。
——有一個工號為4465592的,VLOOKUP沒有在數(shù)據(jù)明細(xì)里找到信息,計算結(jié)果顯示“未領(lǐng)取”,小A就給那人發(fā)了工資,又過了幾天,她才發(fā)現(xiàn),工資給那人發(fā)了雙份!
VLOOKUP函數(shù)有BUG!老娘不幾道啊!明明數(shù)據(jù)源有4465592,VLOOKUP它為啥找不到?!被辭退的小A心里很委屈
我們談一下VLOOKUP函數(shù)的“BUG”吧。
培訓(xùn)過程中,確實有碰到類此的案例,因為VLOOKUP的這個“BUG”,導(dǎo)致數(shù)據(jù)計算出錯,甚至以至于造成錢財錯漏,也是有耳聞。
事實上,這當(dāng)然并不是VLOOKUP的BUG,而是它的一種計算規(guī)則。
對于數(shù)據(jù)類型,VLOOKUP的要求格外嚴(yán)格。
上圖中的VLOOKUP函數(shù)之所以計算出錯,便是因為D2單元格工號的數(shù)據(jù)類型是文本型數(shù)值(左上角有綠三角),而A列的工號是純數(shù)值,兩者盡管看起來長的一樣,但數(shù)據(jù)類型并不一樣,在VLOOKUP的眼中兩者便并不等同。
不同函數(shù)對數(shù)據(jù)類型的要求有不同的態(tài)度,譬如說吧,COUNTIF函數(shù)就不在意數(shù)據(jù)類型是否匹配的問題……
倘若在F2輸入一下公式,可以得到計算結(jié)果為1。
=COUNTIF(A:A,D2)
這說明在COUNTIF眼中,文本數(shù)值和純數(shù)值是等同的。
這是不是說明COUNTIF比VLOOKUP函數(shù)好用呢?
——也不是,COUNTIF“犯其錯”來也很瘋狂的。
承擔(dān)因您的行為而導(dǎo)致的法律責(zé)任,
本站有權(quán)保留或刪除有爭議評論。
參與本評論即表明您已經(jīng)閱讀并接受
上述條款。