LOOKUP函數怎么用?LOOKUP函數是一個查找函數,可以從單行或單列區域或者從一個數組返回值。LOOKUP函數具有兩種語法形式:向量形式和數組形式。
數組形式是為了保證其與其他電子表格產品的兼容,因此,在這種情形下,應盡量使用更為便捷的VLOOKUP函數或HLOOKUP函數。
LOOKUP函數之美
LOOKUP函數有一些特別之處,正是這些特別之處顯示了LOOKUP函數之美。
LOOKUP函數的特別之處之一:其向量形式
LOOKUP函數可以在單行區域或單列區域(稱為“向量”)中查找值,然后返回另一個單行區域或單列區域中相同位置的值。當要查詢的值列表較大或者值可能會隨時間而改變時,使用這種向量形式。
LOOKUP函數的向量形式的基本使用如圖1所示。
圖1
注意,在使用LOOKUP函數查詢時,必須按升序排列查詢的數據。
LOOKUP函數的特別之處之二:允許其參數生成數組
如圖2所示的工作表,要求利潤值為負值的最后一個月,單元格F3中的公式為:
=LOOKUP(2,1/(B2:B13<0),A2:A13)
公式中,測試單元格區域B3:B13中的值是否小于0,將結果除1,得到數組:
{1;#DIV/0!;#DIV/0!;1;#DIV/0!;#DIV/0!;#DIV/0!;1;#DIV/0!;#DIV/0!;#DIV/0!;#DIV/0!}
然后,LOOKUP函數在該數組中查找2,很顯然找不到該數值,因此找到最后一個數字值1,并返回該值所在位置相同行的列A中的月份值。
圖2
這樣,不需要像數組公式一樣,在輸入完后需按Ctrl+Shift+Enter鍵。
LOOKUP函數的特別之處之三:使用一個極大數找到滿足條件的最后一個數據
如圖3所示的工作表,查找列A中最后一個數的公式為:
=LOOKUP(9.99999999999999E+307,A:A)
公式中,使用了Excel能夠表示的最大的數字9.99999999999999E+307,LOOKUP函數查找該數,很顯示找不到,因此返回列A中的最后一個數字。
圖3
這里使用的是LOOKUP函數的數組形式。注意到,列A中包含文本且沒有排序。
示例
分別查找每名員工最近出差的日期
如圖4所示的工作表,在A1:B10中列出了每名員工2017年出差時間,并已按順序升序排列。單元格E3:E5中是這些員工最近出差的日期。
單元格E3中的公式:
=LOOKUP(D3,$A$2:$A$10,$B$2:$B$10)
下拉至單元格E5。
圖4
結語
看起來,LOOKUP函數可能沒有VLOOKUP函數使用廣泛,但存在即有道理。正如本文介紹的,LOOKUUP函數的特別之處讓其在公式中也有很多用武之地。