VLookup屬于Excel查找類的函數,語法如下:
VLookup(lookup_value,table_array,col_index , range_lookup)
VLookup(查找值,查找區域,列序号,邏輯值)
- 在表格的首列查找指定數據,并返回指定數據所在行中指定列處的數據;
- 當查找值位于需查找數據區域左邊第一列時,使用VLookup函數,其中“V”表示垂直方向,;
- 當查找值位于需查找數據區域上邊第一行時,使用HLookup函數,其中“H”表示水平方向;
函數參數意義如下:
- Lookup_value:查找值,可以是數值、字符串或引用;
- table_array:查找區域,可以是單元格區域或區域名稱;
- col_index :要返回值的列号。大于表列數返回錯誤值 #REF!;
- range_lookup:查找方式,分别如下:
True/1/忽略:返回近似匹配值,如果找不到精确匹配值,則返回小于lookup_value 的最大數值。要求數據升序排列;
False/0:返回精确匹配值。如果找不到,則返回錯誤值 #N/A
主要用途:
- 根據已知數據查找對應的另一個數據;
- 批量匹配數據,如根據工号匹配姓名;
常規應用舉例:
單條件查詢對應的匹配值
不需要在查詢表中輸入等級對應的所有可能分數,隻需要輸入每個等級對應的最低分數,然後使用近似匹配的VLookup
說明:
- 查詢表中考核分數按升序排序;
- 沒有查找到86,結果取小于86的最大值80,對應等級A;
- 使用近似匹配查找精确值:
- 針對文本字符串查找精确匹配時,VLookup函數可能較慢,可考慮使用近似匹配:
說明:
為避免不正确的結果:
- 查找表第一列按升序排序;
- Countif檢查值,避免不正确的結果;
高級應用舉例:
數據源:
根據姓名匹配工号、年齡:
說明:
- VLookup函數隻能從左向右查找,如果需要從右向左查找,則需要把區域進行“左右位置挪移”。可利用IF函數的數組效應把兩列換位重新組合後,再按正常的從左至右查找;
- 在Excel參數支持數組的函數中使用數組時,返回的結果也是一個數組,使用IF後的結果返回一個數組:{"張三","P16001";"李四","P16002";"王五","P16003";"謝六","P16004";"鄭七","P16007";"周八","P16008";"武九","P16009"};
數據源:
根據部門和員工姓名查找E列的年齡:
說明:
- B73&C73 - 把兩個條件連接在一起,作為一個整體進行查找;
- $A$30:$A$36&$C$30:$C$36 - 和條件連接相對應,把部門和姓名列也連接在一起,作為一個待查找的整體;
- 用IF{1,0}把連接後的兩列與E列數據合并成一個兩列的内存數組;
- 公式中含有多個數據與多個數據運算( $A$30:$A$36&$C$30:$C$36),所以必須以數組形式輸入,即按ctrl shift後按Enter結束輸入;
, 更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!