vlookup函式精確查詢(如何使用vlookup函式查詢資料)
工作中,大家使用VLOOKUP函式查詢資料是很常見的事,但有時候,一個VLOOKUP函式可能無法解決更多的問題,這時候學習下其他函式組合也很必要!
下圖中,如果通過VLOOKUP函式查詢E3:E5單元格姓名對應的銷售額,公式應該怎麼寫?
F3公式:=VLOOKUP(E3,$B$3:$C$10,2,0)
公式解析:
=VLOOKUP(找什麼,從哪裡找,找到了返回什麼,精確查詢還是模糊查詢)
E3:表示要查詢的內容。
$B$3:$C$10:表示以查詢內容為首列的查詢區域。
2:表示我們要返回的結果在查詢區域中屬於第2列。
0:表示精確查詢。
可以代替VLOOKUP函式解決這道題的函式有哪些?
一、LOOKUP函式。
=LOOKUP(查詢值,查詢範圍,返回值範圍)
F3公式:=LOOKUP(1,0/($B$3:$B$10=E3),$C$3:$C$10)
公式解析:
$B$3:$B$10=E3:判斷B3:B10單元格區域中的內容是否跟E3單元格內容相等,若相等,返回TRUE,否則,返回FALSE,此時返回一個TRUE和FALSE的陣列:{FALSE;FALSE;FALSE;FALSE;TRUE;FALSE;FALSE;FALSE}
0/($B$3:$B$10=E3):用0/TRUE,0/FALSE會返回一個0和錯誤值的陣列:{#DIV/0!;#DIV/0!;#DIV/0!;#DIV/0!;0;#DIV/0!;#DIV/0!;#DIV/0!}
整個公式的意思是:用LOOKUP函式查詢數字1在{#DIV/0!;#DIV/0!;#DIV/0!;#DIV/0!;0;#DIV/0!;#DIV/0!;#DIV/0!}這個陣列中的位置,但始終查不到,於是返回最後一個0值的位置,這時返回相對應的C3:C10單元格區域中對應的值。
二、INDEX MATCH函式。
F3公式:=INDEX($C$3:$C$10,MATCH(E3,$B$3:$B$10,0))
公式解析:
=MATCH(查詢物件,查詢範圍,查詢方式)
=INDEX(查詢區域,返回所在行號,返回所在列號)
MATCH(E3,$B$3:$B$10,0):精確查詢E3單元格內容在查詢範圍B3:B10中的位置,返回的結果為:5。
$C$3:$C$10:是INDEX函式的查詢區域。
整個公式的意思就是:在C3:C10查詢區域內,返回第5行對應單元格的內容。
三、OFFSET MATCH函式。
F3公式:=OFFSET($B$2,MATCH(E3,$B$3:$B$10,0),1)
公式解析:精確查詢E3單元格內容在查詢範圍B3:B10中的位置,返回的結果為:5。
=OFFSET(基準位置,向下或上偏移幾行,向右或左偏移幾列,引用區域的高度,引用區域的寬度)
MATCH(E3,$B$3:$B$10,0):精確查詢E3單元格內容在查詢範圍B3:B10中的位置,返回的結果為:5。
$B$2:是OFFSET函式的基準位置。
整個公式的意思是:以B2單元格為基準,向下偏移5行,向右偏移一行,最後兩個引數省略,預設一個單元格的高度。即C7單元格的位置。
四、INDIRECT MATCH函式。
F3公式:=INDIRECT("C"&MATCH(E3,$B$2:$B$10,0) 1)
公式解析;
=INDIRECT(引用區域,引用格式)
MATCH(E3,$B$2:$B$10,0):精確查詢E3單元格內容在查詢範圍B3:B10中的位置,返回的結果為:6。
MATCH(E3,$B$2:$B$10,0) 1:加1是因為單元格的內容是從第2行開始寫的,而行號從1開始,加1才能得到正確的結果,這裡返回的結果為:7。
=INDIRECT("C"&MATCH(E3,$B$2:$B$10,0) 1):使用&文字連線符將C與MATCH函式返回的位置連線起來,相當於公式=INDIRECT("C7"),也就是引用C7單元格的內容,所以結果為:195。
五、HLOOKUP TRANSPOSE函式。
=HLOOKUP(查詢值,查詢區域,返回第幾行的資料,精確查詢還是近似查詢)
=TRANSPOSE(需要進行轉置的陣列或工作表上的單元格區域)
F3公式:{=HLOOKUP(E3,TRANSPOSE($B$3:$C$10),2,0)}
公式解析:
TRANSPOSE($B$3:$C$10):將縱向的單元格區域B3:C10轉成橫向的單元格資料。使用該函式的原因是因為HLOOKUP函式只能橫向查詢。
{=HLOOKUP(E3,TRANSPOSE($B$3:$C$10),2,0)}:
E3:查詢值。
TRANSPOSE($B$3:$C$10):查詢區域。
2:返回值在查詢區域的第2行。
0:精確查詢。
注意:該公式中的雙大花括號並不是手動輸入的,而是公式寫完之後按組合鍵“Ctrl Shift Enter”自動生成的。
如有需要本次教程的Excel練習檔案,私信傳送“017”即可免費獲取!
以上就是本期的教程,有任何不懂之處可以私信找我或評論區留言哦~覺得文章不錯轉發或者點個贊吧!