在 VLOOKUP 中的 V 代表垂直。
VLOOKUP(lookup_value,table_array,col_index_num,range_lookup)
Lookup_value 為需要在數(shù)組第一列中查找的數(shù)值。Lookup_value 可以為數(shù)值、引用或文本字符串。
Table_array 為需要在其中查找數(shù)據(jù)的數(shù)據(jù)表?梢允褂脤(duì)區(qū)域或區(qū)域名稱的引用,例如數(shù)據(jù)庫或列表。
如果 range_lookup 為 TRUE,則 table_array 的第一列中的數(shù)值必須按升序排列:…、-2、-1、0、1、2、…、-Z、FALSE、TRUE;否則,函數(shù) VLOOKUP 不能返回正確的數(shù)值。如果 range_lookup 為 FALSE,table_array 不必進(jìn)行排序。
通過在“數(shù)據(jù)”菜單中的“排序”中選擇“升序”,可將數(shù)值按升序排列。
Table_array 的第一列中的數(shù)值可以為文本、數(shù)字或邏輯值。
文本不區(qū)分大小寫。
Col_index_num 為 table_array 中待返回的匹配值的列序號(hào)。Col_index_num 為 1 時(shí),返回 table_array 第一列中的數(shù)值;col_index_num 為 2,返回 table_array 第二列中的數(shù)值,以此類推。如果 col_index_num 小于 1,函數(shù) VLOOKUP 返回錯(cuò)誤值值 #VALUE!;如果 col_index_num 大于 table_array 的列數(shù),函數(shù) VLOOKUP 返回錯(cuò)誤值 #REF!。
Range_lookup 為一邏輯值,指明函數(shù) VLOOKUP 返回時(shí)是精確匹配還是近似匹配。如果為 TRUE 或省略,則返回近似匹配值,也就是說,如果找不到精確匹配值,則返回小于 lookup_value 的最大數(shù)值;如果 range_value 為 FALSE,函數(shù) VLOOKUP 將返回精確匹配值。如果找不到,則返回錯(cuò)誤值 #N/A。
如果函數(shù) VLOOKUP 找不到 lookup_value,且 range_lookup 為 TRUE,則使用小于等于 lookup_value 的最大值。
如果 lookup_value 小于 table_array 第一列中的最小數(shù)值,函數(shù) VLOOKUP 返回錯(cuò)誤值 #N/A。
如果函數(shù) VLOOKUP 找不到 lookup_value 且 range_lookup 為 FALSE,函數(shù) VLOOKUP 返回錯(cuò)誤值 #N/A。
該示例使用 1 個(gè)大氣壓的空氣值。
A | B | C | |
1 | 密度 | 粘度 | 溫度 |
2 | 0.457 | 3.55 | 500 |
3 | 0.525 | 3.25 | 400 |
4 | 0.616 | 2.93 | 300 |
5 | 0.675 | 2.75 | 250 |
6 | 0.746 | 2.57 | 200 |
7 | 0.835 | 2.38 | 150 |
8 | 0.946 | 2.17 | 100 |
9 | 1.09 | 1.95 | 50 |
10 | 1.29 | 1.71 | 0 |
公式 | 說明(結(jié)果) |
=VLOOKUP(1,A2:C10,2) | 在 A 列中查找 1,并從相同行的 B 列中返回值 (2.17) |
=VLOOKUP(1,A2:C10,3,TRUE) | 在 A 列中查找 1,并從相同行的 C 列中返回值 (100) |
=VLOOKUP(0.7,A2:C10,3,FALSE) | 在 A 列中查找 0.746。因?yàn)?A 列中沒有精確地匹配,所以返回了一個(gè)錯(cuò)誤值 (#N/A) |
=VLOOKUP(0.1,A2:C10,2,TRUE) | 在 A 列中查找 0.1。因?yàn)?0.1 小于 A 列的最小值,所以返回了一個(gè)錯(cuò)誤值 (#N/A) |
=VLOOKUP(2,A2:C10,2,TRUE) | 在 A 列中查找 2,并從相同行的 B 列中返回值 (1.71) |