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的實用技巧。