大家好我是Excel從零到一,今天跟大家分享下vlookup函數它爸lookup函數的用法,廢話不多說我們開始把
Lookup函數一共有兩種形式一種是向量形式一種是數組形式,我主要介紹其向量形式
向量形式Lookup函數:在單行區域或單列區域(向量)中查找數值,然後返回第二個單行區域或單列區域中相同位置的數值 參數 lookup_value:函數在第一個向量中所要查找的數值,它可以為數字、文本、邏輯值或包含數值的名稱或引用; lookup_vector:隻包含一行或一列的區域lookup_vector 的數值可以為文本、數字或邏輯值; result_vector:隻包含一行或一列的區域其大小必須與 lookup_vector 相同
注意:
1.如果找不到查找值,lookup函數會返回小于或等于查找值的最大值。
2.如果查找值小于查找區域的最小值,lookup函數會返回 #N/A 錯誤。
3.第二參數中的值必須升序排序否則可能找不到查找值
還是來個實例演示下把一共三種情況
第一種:能找到查找值
圖中我們要查找王明的成績,對第二參數進行升序排序。
第一參數為王明所在單元格,第二參數為姓名列即王明名字所在列,第三參數為成績列即要查找内容所在列,函數在姓名列查找王明所在的位置是5然後返回第三參數成績列所在位置的第五行即55分
第二種:找不到查找值
為了更加直觀,以成績查找姓名,先對成績進行升序排序
我們可以看到成績表中是沒有100分的,
當lookup函數找不到查找值就會返回小于或等于查找值的最大值
從表中可以看到小于等于100的最大值是92所以函數返回劉曉所在單元格
第三種:查找值小于查找區域的最小值
以成績查找姓名,先對成績進行升序排序
查找值為44分但是表中是沒有44分且最低分為55分
當查找值小于查找區域的最小值,lookup函數會返回 #N/A 錯誤。
以上就是lookup函數經常遇到的三種情況,下面我們來get一些lookup函數的使用技巧
1.逆向查找公式=LOOKUP(1,0/(A2:A8=F3),C2:C8)
公式解析
我們在公式中選A2:A8=F3
然後按F9,我們可以看到公式變成
LOOKUP(1,0/({FALSE;FALSE;FALSE;FALSE;TRUE;FALSE;FALSE}),C2:C8)
我們可以看做0和括号中的每一個元素分别相除,可以把false看做是0,true看做是1,當0/0時返回錯誤值#DIV/0!而lookup函數會忽略錯誤值,當0/1時等于0,我們的查找值為1,而在所有元素中錯誤值被忽略,0小于等于查找值的最大值這樣寫的好處就是不用進行升序排序,其實所有元素也就隻剩下一個0了 - -
2.多條件查找公式:=LOOKUP(1,0/((A2:A9=F3)*(B2:B9=G3)),C2:C9)
這個跟第一個十分相似,隻不過是在第一個條件後又乘了一個條件,也就是隻有當數據兩列同時為計算結果同時相乘為0時才滿足條件返回,若還是看的不太明白可以翻看之前寫的這篇文章十分類似SUMPRODUCT一個為“搶飯碗”而生的函數,它能做的實在太多了
3.提取單元格内的數字
公式:=-LOOKUP(1,-LEFT(D2,ROW($1:$30)))
-LEFT(D2,ROW($1:$30)),從D2單元格左邊,對函數提取30次,而又在其前面添加了負号将提取數據轉換為數值當提取出來的數據為文本是會返回錯誤值
查找值為1,也就是在構建的負數中進行查找結果,但是1不在數據中
因為使用lookup函數函數默認是升序排列的所以函數會返回最後一個正确的值,而最後一個正确值恰恰是我們要提取的值
最後我們在函數前加上負号來将提取出來的負數轉換為正數
今天的内容就是這麼多,好像有點難理解啊,不過沒關系好好看一定能明白
其實lookup函數的用法還有很多,我列舉的僅是最常用到的三種用法
如果想獲得演示文件以便于更好的理解函數
1.轉發點贊此文章
2.點擊作者頭像關注作者
3.私信回複:lookup
你們的關注點贊和轉發是我持續更新的動力
,更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!