excel中vlookup函数使用方法 excel身份证号码显示e17( 二 )


3.动态返回列数据(第 3 个参数动态获取)
在表一中 , 根据 G12 的学生姓名查找期中、期末及平均成绩 , 放到 H12:J12 中 。
我们只要在 H12 中输入公式:
=VLOOKUP($G12,$B$5:$E$12,MATCH(H$11,$B$4:$E$4,0),FALSE)
右拉到 J12 列填充公式 , 公式中的$表示绝对引用 。
公式的含义是:在 B5:E12 区域内 , 在 B 列中查找等于(第 4 个参数是 False , 所以是等于)G12 的数据 , 找到后 , 返回 MATCH(H$11,$B$4:$E$4,0)返回的值对应列的数据 。
MATCH(H$11,$B$4:$E$4,0):在$B$4:$E$4 中查找 H$11 所在位置 , 就是第几列 。

excel中vlookup函数使用方法 excel身份证号码显示e17


4.从右到左查找
Vlookup 函数从左边列往右边列查 , 但我们有时需要根据右边列查左边列的数据 , 在不允许变动表格列的情况下 , 我们可以用进行 IF 配合 。
在表一中 , 根据 G12 的学生期末成绩查找学生姓名 , 放到 H12 中 。
我们只要在 H12 中输入公式:
=VLOOKUP(G12,IF({0,1},B5:B12,D5:D12),2,FALSE)
然后同时按 Ctrl+Shift+Enter 结束 , 关于 IF 函数的用法 , 请参考我的另一篇文章“如何成为 Excel 大神—IF 函数” 。
公式的含义是:在 IF({0,1},B5:B12,D5:D12)返回的区域内 , 在第 1 列中查找等于(第 4 个参数是 False , 所以是等于)G12 的数据 , 找到后 , 返回 2 列(第 3 个参数是 2)对应的数据 。

excel中vlookup函数使用方法 excel身份证号码显示e17


5.交叉查找
很多时候我们需要同时根据行列信息查找交叉单元格的数据 。
在表一中 , 根据 G12 的学生姓名查找期末的成绩 , 放到 H12 中 。
我们只要在 H12 中输入公式:
=VLOOKUP($G12,$B$5:$E$12,MATCH(H$11,$B$4:$E$4,0),FALSE)
公式的含义是:在 B5:E12 区域内 , 在 B 列中查找等于(第 4 个参数是 False , 所以是等于)G12 的数据 , 找到后 , 返回 MATCH(H$11,$B$4:$E$4,0)返回的值对应的数据 。
MATCH(H$11,$B$4:$E$4,0):在$B$4:$E$4 中查找 H$11 所在位置 , 就是第几列

excel中vlookup函数使用方法 excel身份证号码显示e17


大家可能发现 , 这个公式和第 3 点的一样 , 是的 , 只要是动态获取第 3 个参数 col_index_num 的需求 , 都可能考虑这样的写法 。
6.区间查找
假如我们有如下图规则 , 根据该规则对表一的平均成绩进行评价 。

excel中vlookup函数使用方法 excel身份证号码显示e17


我们要根据学生平均分所在区间 , 来得出评价 , 我们需要添加评价区间数据进行辅助查询 , 然后利用 Vlookup 的模糊匹配实现该功能 。
首先我们要对 G18:G21 升序排序 。
我们在 F5 中输入公式:
=VLOOKUP(E5,$G$18:$H$21,2,TRUE)
公式的含义是:第 4 个参数是 True , 所以是模糊匹配 , 用平均分 E5 在$G$18:$H$21 区域内查找 , 从第一个数据开始匹配 , 匹配到就返回该数据 , 没有匹配到一样的值就继续与下一个值进行匹配 , 直到遇到大于查找值的值 , 此时返回上一个数据 , 找到后 , 返回 H 列(第 3 个参数是 2 , 所以是 H 列)数据 。

excel中vlookup函数使用方法 excel身份证号码显示e17

推荐阅读