vlookup只能匹配第一列嗎(為什麼我的vlookup查詢會找不到呢)

例如有這樣一個表格

vlookup的侷限

用vlookup可以用這樣的公式查詢姓名叫“李華”的人的職務。

=VLOOKUP("李華",B2:D7, 2, FALSE)

   

       

公式說明

       

查詢區域和返回列

但是你想查詢之後返回李華的的序號“101”, 用vlookup卻沒有辦法做到。因為vlookup規定從第一列查詢,返回的值必須在查詢範圍內。雖然手工調整列的順序,但是比較麻煩。列數多了之後,就更不好弄了。

使用INDEX和MATCH這兩個函式

假如我們要返回序號101,那麼可以用如下的公式

=INDEX(A2:A7,MATCH("李華",b2:b7, 0))    

解釋一下這個公式。

利用match函式在姓名那一列裡精確查詢“李華”,並返回在查詢範圍中的相對位置, 也就是1。

MATCH("李華",b2:b7, 0)    

A2:A7對應著第一列,也就是序號列。用index函式獲取第一行的值,就可以了

=INDEX(A2:A7, 1)    

試著把公式改成

=INDEX(A2:A7,MATCH("銷售副總裁",c2:c7, 0))    

看看結果如何。

有疑問的話,可以在評論區留言。歡迎關注我的頭條號,以後我會繼續分享更多excel的實用技巧。