在實際工作中,反向查找的方法主要有以下幾個:
VLOOKUP + IF
VLOOKUP + CHOOSE
INDEX + MATCH
LOOKUP
OFFSET + MATCH
下面我將通過一個例子分別用以上這5種方法給大家演示反向查找。
下圖中,E3單元格我們設置了下拉選擇,通過選擇產品找到對應的品牌。
方法一:使用VLOOKUP + IF。
具體操作步驟如下:
1、選中F3單元格 -- 在編輯欄中輸入公式「=VLOOKUP(E3,IF({1,0},$C$3:$C$7,$B$3:$B$7),2,0)」 -- 按回車鍵回車。
2、動圖演示如下。
3、公式解析。
IF({1,0},$C$3:$C$7,$B$3:$B$7):當條件為1時,返回第一個結果C3:C7;當條件為0時,返回第二個結果B3:B7,這裡{1,0}兩個條件是同時判斷的,所返回的兩個結果組成一個C列數據在前B列數據在後的數組{"水潤面膜","WIS";"補水面膜","自然堂";"黑面膜","膜法世家";"泡泡麵膜","珀萊雅";"保濕面膜","百雀羚"}。
方法二:使用VLOOKUP+CHOOSE。
具體操作步驟如下:
1、選中F3單元格 -- 在編輯欄中輸入公式「=VLOOKUP(E3,CHOOSE({1,2},$C$3:$C$7,$B$3:$B$7),2,0)」 -- 按回車鍵回車。
2、動圖演示如下。
3、公式解析。
CHOOSE({1,2},$C$3:$C$7,$B$3:$B$7):可以返回一個C列數據在前B列數據在後的數組{"水潤面膜","WIS";"補水面膜","自然堂";"黑面膜","膜法世家";"泡泡麵膜","珀萊雅";"保濕面膜","百雀羚"},當公式執行時,CHOOSE先從索引號數組中取出第一個元素1,而1對應的值為C3:C7,因此從C3:C7中取出C3單元格的值「水潤面膜」;接著,從索引號數組中取出2,2對應的值為B3:B7,所以從B3:B7中取出B3單元格的值「WIS」;按此循環直到取完C3:C7和B3:B7中的所有值。
方法三:使用INDEX+MATCH。
具體操作步驟如下:
1、選中F3單元格 -- 在編輯欄中輸入公式「=INDEX($B$3:$B$7,MATCH(E3,$C$3:$C$7,0))」 -- 按回車鍵回車。
2、動圖演示如下。
3、公式解析。
MATCH(E3,$C$3:$C$7,0):先用MATCH函數根據產品名稱在C3:C7中查找位置。返回結果2。=INDEX($B$3:$B$7,2):再用INDEX函數根據查找到的位置在B3:B7中取值,結果為「自然堂」。
方法四:使用LOOKUP。
具體操作步驟如下:
1、選中F3單元格 -- 在編輯欄中輸入公式「=LOOKUP(1,0/($C$3:$C$7=E3),$B$3:$B$7)」 -- 按回車鍵回車。
2、動圖演示如下。
3、公式解析。
($C$3:$C$7=E3):先判斷C3:C7單元格的值是否與E3相等,如果相等,返回TRUE,否則,返回FALSE。此時得到一個由TRUE和FALSE組成的數組{FALSE;TRUE;FALSE;FALSE;FALSE},用0除以該數組,得到一個由0和錯誤值#DIV/0組成的數組{#DIV/0!;0;#DIV/0!;#DIV/0!;#DIV/0!},0/(條件)相當於0/TRUE=0,0/FALSE=#DIV/0。整個公式的意思是:要在一個由0和錯誤值#DIV/0組成的數組中查找1,很明顯找不到,那就返回最接近於1的值,也就是0,用大於0的數值來查找0,肯定可以查找最後一個滿足條件的。
方法五:使用OFFSET+MATCH。
具體操作步驟如下:
1、選中F3單元格 -- 在編輯欄中輸入公式「=OFFSET($B$2,MATCH(E3,$C$3:$C$7,0),0)」 -- 按回車鍵回車。
2、動圖演示如下。
3、公式解析。
MATCH(E3,$C$3:$C$7,0):先用MATCH函數根據產品名稱在C3:C7中查找位置。返回結果4。=OFFSET($B$2,4,0):OFFSET函數以B2單元格為基準,向下偏移4行,返回結果「珀萊雅」。
想要本期教程的Excel文件,私信發送【反向查找】找我哦~
以上這5個反向查找的方法,看了我的解析,是不是超簡單呢?
如果你有其它的方法,別忘了在評論區跟大家分享!