VLOOKUP正向的應用介紹資料較多,簡單回顧一下各參數如下:
VLOOKUP(lookup_value,table_array,col_index_num,range_lookup)
參數 | 說明 | 輸入參數類型 |
---|---|---|
lookup_value | 要查找的值 | 數值、引用或文本字符串 |
table_array | 要查找的區域 | 數據表區域 |
col_index_num | 返回數據在查找區域的第幾列數 | 正整數 |
range_lookup | 模糊匹配/精確匹配 | TRUE/FALSE(或不填) |
VLOOKUP 逆向查找技巧
以查找替代料號對應的原料號爲例,如下圖公式
=VLOOKUP(F2,IF({1,0},C2:C34,A2:A34),2,0)
其中
第二個參數–查找區域是IF({1,0},D2:D19,B2:B19)的返回結果。
IF函數條件爲真時返回第一個值,條件爲假返回第二值。
查IF函數使用幫助,它不僅可以返回一個值,還可以返回一個區域引用。
我們將IF({1,0},D2:D19,B2:B19)拆解爲如下兩條公式,也就好理解了:
下面展示一些 內聯代碼片
。
IF(1,D2:D19,B2:B19) //返回D2:D19
IF(0,D2:D19,B2:B19) //返回B2:B19
IF函數的第一個參數爲數組{1,0}時會分別計算兩次,第一次以“1”判斷,返回D2:D19,第二次以“0"判斷,返回B2:B19
通過這個IF函數,兩次計算的結果會重新組合成一個數組返回,也即D2:D19在第一列,B2:B19在第二列,從而實現了數據列位置的調整,再套用VLOOKUP函數規則。
補充兩個函數
INDEX
INDEX(一列數據,數字N),返回結果爲這一列的數據第N個。
舉例如下圖
"=INDEX(C2:C34,4)",
返回C2:C19 數據區域的,第4個值,也即”Y4010500004“。
MATCH
MATCH(查找值,查找列,0),表示查找值在查找列裏面的第幾個,及已知料號求料號所在行。
=MATCH(F3,C2:C23,0)