vlookup怎麼反向查詢(vlookup函式逆向查詢的使用方法)

在實際工作中,反向查詢的方法主要有以下幾個:

①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個反向查詢的方法,看了我的解析,是不是超簡單呢?

如果你有其它的方法,別忘了在評論區跟大家分享!