Excel|三個不同查找公式的異曲同工之妙及細微區別
1.1 Vlookup()
Vlookup函數用於搜索某個單元格區域或數組的第一列,然後返回相同行中指定列的值。
Hlookup函數用於搜索某個單元格區域或數組的第一行,然後返回相同列中指定行的值。
兩者的區別只在於查找的方式,前者是在區域或者數組的第一列中查找,而後者則是在第一行中查找,即橫向與縱向的區別。
前者是在區域中左列查找返回右邊指定列對應的值。
後者是在區域上邊行查找返回下邊指定行對應的值。
1.2 Lookup()
從單行/單列(向量)或數組中查找值。
Lookup函數可從區域或者數組的第一行或第一列中查找數據,返回最後一行或最後一列中對應的數據。區域或者數組可以是單行或單列(稱為向量),也可以是多行或多列,但是實際工作中多用於單行或單列查找,對於多行或多列的區域或者數組,通常採用Vlookup和Hlookup函數來解決。
1.3 Index()
返回指定單元格或指定單元格數組的值。
Index函數能引用區域或者數組中指定行與列的值,包括兩種引用方式:數組和引用。如果是數組形式只能返回數值,如果是引用形式則返回引用。
Index(array,row_num, [column_num])
index(reference,row_num,[column_num],[area_num])
1.4 Match()
返回值在數組或者區域中的對應位置。
Match(lookup_value, lookup_array, [match-type])
第一個參數支持通配符,也支持數組;
第二個參數表示需要在其中查找值的一個區域或數組,只能是單行或單列;
1.5 實例
如有以下數據:
商品 | 一季度 | 二季度 | 三季度 | 四季度 | 商品 | 手機 | |
電視 | 593 | 752 | 643 | 802 | 時間 | 三季度 | |
冰箱 | 579 | 639 | 629 | 689 | 銷量 | ||
洗衣機 | 899 | 869 | 949 | 919 | |||
空調 | 532 | 723 | 582 | 773 | |||
音響 | 826 | 977 | 876 | 1027 | |||
電腦 | 580 | 780 | 630 | 830 | |||
手機 | 729 | 777 | 779 | 827 | |||
微波爐 | 797 | 968 | 847 | 1018 | |||
電暖氣 | 791 | 642 | 841 | 692 |
在銷量後應用公式:=HLOOKUP(H2,A1:E10,MATCH(H1,A1:A10,0))
可以得到779的值。
2 不同查找函數實例對比學號 | 學生 | 學號 | 學生 | |
9372001 | 甲 | 9372003 | =INDEX(B:B,MATCH(D2,A:A)) | |
9372002 | 乙 | =VLOOKUP(D2,A:B,2,0) | ||
9372003 | 丙 | =LOOKUP(1,0/(D2=A2:A13),B2:B13) | ||
9372004 | 丁 | |||
9372005 | 戊 | |||
9372006 | 己 | |||
9372007 | 庚 | |||
9372008 | 辛 | |||
9372009 | 壬 | |||
9372003 | 癸 |
公式對應的值:
學號 | 學生 | 學號 | 學生 | |
9372001 | 甲 | 9372003 | 丙 | |
9372002 | 乙 | 丙 | ||
9372003 | 丙 | 癸 | ||
9372004 | 丁 | |||
9372005 | 戊 | |||
9372006 | 己 | |||
9372007 | 庚 | |||
9372008 | 辛 | |||
9372009 | 壬 | |||
9372003 | 癸 |
3 引用函數比較
函數名 | 類別 | 第1個參數 | 第2個參數 | 第3個參數 |
lookup() | 向量型 | lookup_value | 區域 | [區域] |
數組型 | lookup_value | 區域 | 無 | |
hlookup() | lookup_value | 區域 | row_index__num | |
vlookup() | lookup_value | 區域 | col_index__num | |
match() | lookup_value | 區域 | ||
index() | 向量型 | reference | row_num | [col_num] |
數組型 | array | row_num | [col_num] |
備註:
3.1 Horizontal水平,Vertical垂直;
3.2 區域的開始列一般為lookup_value變數所在列,終止列一般為lookup_value值所在列;
3.3 lookup()將「區域」的最後一列默認為值所在列;
3.4 Vlookup()的lookup_value,一般由行形成記錄,變數在區域首行,值在某列(首列對應lookup_value的關鍵字,某列對應具體值);
3.5 hlookup()的lookup_value,一般由列形成記錄,變數在區域首列,值在某行(首行對應lookup_value的關鍵字,某行對應具體值);
3.6 向量型lookup()可以從單行、單列區域或者一個數組中返回值,其區域是單行或單列;
3.7 match()用於返回位置;
3.8 index()用於返回區域中的值或值的引用;
推薦閱讀:
※通達信一招定乾坤主圖指標公式
※Excel太強大了,用公式實現橫向轉縱向的操作方法,需要的就進來看看
※服裝裁剪的公式 - 已回答 - 搜搜問問
※公式求助1000例(5)
※中年發福,男女各有一個關鍵年紀!來來來,「發福公式」自測一下~