這一篇主要講解 vlookup的反向查詢的用法,這樣的反向查詢方法也可以使用index和match配合使用達(dá)到同樣的效果。
我們舉個簡單的例子:
1、單條件反向查找引用:有兩個表Sheet1和Sheet2,Sheet1有100行數(shù)據(jù),A列是學(xué)生學(xué)號,B列是姓名,Sheet2 表的A列是已知姓名,B列是學(xué)號,現(xiàn)在用該函數(shù)在Sheet1表中查找姓名,并返回對應(yīng)的學(xué)號。
Sheet2表的B2的公式就可以這樣輸入:({}表示數(shù)組公式,要以CTRL+SHIFT+ENTER結(jié)束輸入)
{ =VLOOKUP(A2,IF({1,0},Sheet1!$B$2:$B$100,Sheet1!$A$2:$A$100),2,FALSE) }
該公式通過IF函數(shù)改變了列順序,利用常量數(shù)組{1,0}重新構(gòu)建了一個新的二維內(nèi)存數(shù)組,再提供給VLOOKUP作為查找范圍使用。
上述公式也可改用 =INDEX(Sheet1!$A$2:$A$100,MATCH(A2,Sheet1!$B$2:$B$100,0))
那么IF({1,0}這個怎么解釋,IF({1,0}中的1用其它數(shù)代替也可以,如:IF({2,0}、IF({0.8,0}、IF({-1,0},但0只能用FALSE代替。因此,也可以這樣理解:0等于FALSE,非0數(shù)值則等于TRUE。
在公式的中IF({1,0}只是公式中一部分if(a,b,c),if函數(shù)有三個參數(shù),a為true執(zhí)行b,a為false執(zhí)行c,那么IF({1,0},Sheet1!$B$2:$B$100,Sheet1!$A$2:$A$100)這樣的公式,簡單的理解就是其中的參數(shù)a為{1,0},實際上{1,0}是一個水平數(shù)組他有兩種情況一個是1一個是0,1表示true,0表示flase,因此兩種情況都要執(zhí)行,整個公式執(zhí)行后就是把Sheet1!$B$2:$B$100和Sheet1!$A$2:$A$100兩個區(qū)域合并了,而vlookup返回值為第2列的值即為A列,這樣就達(dá)到了反向查詢的效果。
總結(jié)實際上就是vlookup要查找的列必須在第一列,而我們就是利用數(shù)組公式的特性配合if公式,給vlookup組建一個滿足vlookup要求的表范圍,把條件列前面的內(nèi)容移到后面去,而如果直接在vlookup中選取這個范圍是反向的是不能直接選取的。
希望明白了。閱讀全文,了解如何多條件查詢
單點日志 excel教程 http://spoint./
2、多條件查找引用:有兩個表Sheet1和Sheet2,Sheet1有100行數(shù)據(jù),A列是商品名稱,B列是規(guī)格型號,C列是價格,Sheet2 表的A列是已知的商品名稱,B列是已知的規(guī)格型號,現(xiàn)在用該函數(shù)在Sheet1表中查找商品名稱、規(guī)格型號都相同的行所對應(yīng)的價格填入Sheet2表的C列。
Sheet2表的C2的公式就可以這樣輸入:({}表示數(shù)組公式,要以CTRL+SHIFT+ENTER結(jié)束輸入)
{ =VLOOKUP(A2&"|"&B2,IF({1,0},Sheet1!$A$2:$A$100&"|"&Sheet1!$B$2:$B$100,Sheet1!$C$2:$C$100),2,FALSE) }
用&將A2的名稱和B2的規(guī)格合并成一個值來查找。這里增加"|"是為了避免因兩個條件直接組合而出現(xiàn)本不相同的雷同,如名稱"ABC"和型號"MN8"的組合,與名稱"AB"和型號"CMN8"的組合相同。
上述公式也可改用 { =INDEX(Sheet1!$C$2:$C$100,MATCH(A2&"|"&B2,Sheet1!$A$2:$A$100&"|"&Sheet1!$B$2:$B$100,0)) }
基本的原理:
一定能明白。
1、IF(條件,返回值1,返回值2)
首先你要弄懂這個函數(shù),如果條件為真,函數(shù)的結(jié)果為"返回值1",如果條件為假,函數(shù)的結(jié)果是"返回值2":
if(true,10,100)=10
if(1,"A","B")="A"
if(false,20,30)=30
if(0,"你","我")="我"
2、{1,2,3,4}是一個數(shù)組,一個數(shù)組能存儲多個數(shù)值,數(shù)組的表示方式是{}。
{1,0}是個水平數(shù)組,它有兩個值,一個是1,另一個是0。
{"張三","李四","王五"}也是一個水平數(shù)組,它有三個值。
3、連接符&也是這個公式中的一個知識點。
"A" & "B" & "C"="ABC"
"Aaa"&"Bcd"&"123"="AaaBcd123"
字符串可以連接,數(shù)組也可以連接:
{1,2,3}&{"A","B","C"}={"1A","2B","3C"}
單元格區(qū)域也可以連接:
假如A1:A10的數(shù)據(jù)為1到10,B1:B10的數(shù)據(jù)為a到j(luò)。
A1:A10&B1:B10的結(jié)果就是
1a
2b
3c