院長大大已經開啟Excel函數系列課程,上班族、想學Office相關技術等等有需要的朋友請關注院長,享受每天及時的知識分享,跟著院長走,輕輕鬆鬆玩轉Office。
收到許多朋友的私信反饋,大大會另外相應的開設Excel基礎知識講解,不耽誤函數系列課程,需要的朋友加關注啦喂!
LOOKUP是根據位置從一個區域在另一個區域查找相應值的函數。
=LOOKUP(查找值,查找區域(單行或單列),返回值區域(同樣長度的行或列))
1、 兩個查找區域都是一列
查詢胡淑冰的數學成績,B6是胡淑冰對應的序號,B3:B13是查找區域,H4:H14是返回值的區域。
=LOOKUP(B6,B3:B13,H4:H14)
***這裡我們討論一下LOOKUP函數的幾個易錯的地方:
·為什麼區域一定要是單行或者單列呢,這裡演示一下多行多列的情況:
可以看到求得的值是錯誤的,這是由於LOOKUP函數查詢的是兩個對應的區域中相同位置的單元格數值,當一個區域為多列或多行的時候,並沒有額外的參數來指定更為具體的位置,所以函數會出錯。
·如果兩個數據不是同樣的順序,結果是怎樣的
這裡將數學成績降序排列,可以看到查找的值和實際的值,並不一樣,這是因為函數只識別指定的位置,並不管區域中的順序是否一樣,這就需要我們事先保證兩個數據的關聯數據順序必須一致。
·為何第一個參數不能直接選取名字,要用序號
結果的值依然是錯誤的,這是因為LOOKUP是模糊查詢,一般用於查找值為數字的查詢方式,用中文做查找值就會出現錯誤,即就是上面的例子為什麼用序號而不用名字的原因了。
·如果序號是亂序的會發生什麼
亂序情況下的值也是不正確的,這是由於LOOKUP的基本要求是數字升序排列,否則就會出現錯誤,當然逆序也是不正確的,大家可以試一下逆序的情況。***
2、 兩個查找區域都是一行
通過例子我們知道,按行查找不必升序排列,此種使用方式較少,瞭解即可。
3、 同樣長度的行與列
當用行查找列或用列查找行時,兩個區域的長度必須一樣,即單元格個數一樣。
4、 LOOKUP的數組形式
=LOOKUP(B6,B3:F13)
這裡只有兩個參數,第一個是查找值,第二個是區域,其中B3為查找區域,F13為返回值區域。
此函數也使用較少,因為數組形式主要是為了與其他電子表格程序兼容,這種形式功能有限。
從上面例子看LOOKUP有很多BUG,還要升序多麻煩啊,學這樣的函數有什麼用。
別說,LOOKUP有它與眾不同的功能。
要記住Excel裡的函數沒有一個是沒用的,只有不會使用的人。
--擴展:LOOKUP的神通究竟有多大?--
1、 模糊匹配
=LOOKUP(E3,$I$8:$J$12)
用左表的成績匹配右表的級別,對分數段最小值升序排列,區域一定要鎖定才能向下填充公式。
2、逆向查找
=LOOKUP(1,0/(
C3:C13>1000),A3:A13)加粗部分可根據實際情況變化黃瓜銷量大於1000的有兩個,且返回的是最大的值5000的省份,要是精確查詢銷量為1050的省份呢?
=LOOKUP(1,0/(C3:C13=1050),A3:A13 )加粗部分可根據實際情況變化
此時用等於號來實現精確查找。
3、 多條件查找
=LOOKUP(1,0/(C3:C13>1000)*(E3:E13<500),
A3:A13) 加粗部分可根據實際情況變化以上函數的表達形式大家記住即可,具體原因涉及到LOOKUP設計的底層代碼,這裡不做展開。
推薦LOOKUP函數在升序排列的時候使用。
以上內容不易理解,希望大家親自實踐,慢慢消化。
寫在正文之前:院長大大開始也是小白,知道不會用Office去求人的痛苦,所以大大開了這個公眾號,希望大家都能擺脫困境,大大希望大家轉發給同事朋友一起學習進步,而不是拿去賺取蠅頭小利。
希望大家多多練習以上函數使用方法,早日告別Excel小白。後期院長還會增設PPT,Word相關知識分享,還等什麼,火速關注院長,暢想最新鮮的Office知識。
閱讀更多 Officefuli院 的文章