工作中,大家使用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」即可免費獲取!
以上就是本期的教程,有任何不懂之處可以私信找我或評論區留言哦~覺得文章不錯轉發或者點個贊吧!