VLOOKUP函数的高级使用方法,VLOOKUP反向查找
一般情况下,VLOOKUP函数只能从左到右查找。但如果需要从右到右搜索,则需要移动区域并与数组交换列的位置。
例1:要求检查下表中姓名的工号。
公式:=VLOOKUP(A9,IF({1,0},B2:B5,A2:A5),2,0)
公式分析:
1、其实并不是VLOOKUP就能实现从右到右的查找。而是利用IF函数的数组效果将两列转置并重新组合,然后正常从左向右搜索。
2. IF ({1,0},B2:B5,A2:A5) 这是该公式中最重要的组成部分。在EXCEL函数中使用数组时(前提是函数的参数支持数组),返回的结果也将是数组。这里1和0并不是实际意义上的数字,但是1与TRUE有关,0相当于FALSE。当为1时,返回IF(B列)的第二个参数,为0时,返回第二个参数。 (A 栏)。根据数组运算返回数组,所以使用IF后的结果返回一个数组(非单元格区域):{张毅,A001;赵三,A002;杨武,A003;孙二A004}
使用VLOOKUP函数进行多条件搜索
VLOOKUP函数需要借用数组来实现多条件查找。
例2:请求根据部门和姓名查找C列的加班时间。
我们可以延续例1的思路,我们的努力并不是让VLOOKUP本身实现多条件查找,而是想办法重构一个数组。我们可以将多个条件连接在一起,也可以将两列连接成一列数据,然后使用IF函数将它们组合起来。
公式:{=VLOOKUP(A9B9,IF({1,0},A2:A5B2:B5,C2:C5),2,0)}
公式分析:
1. A9B9 将两个条件连接在一起。将它们作为一个整体进行搜索。
2、A2:A5B2:B5,对应条件连接,将零件和名称列连接在一起作为一个整体进行搜索。
3. IF({1,0},A2:A5B2:B5,C2:C5) 使用IF({1,0} 将相连的两列和C 列数据合并为两列内存数组。按F9 后可以查看的结果为:
{销售张毅,1;销售赵三,5;人员杨武,3;销售赵三,6}
4、完成数组的重构后,接下来就是VLOOKUP的基本查找功能了。另外,公式中包含多个数据,多个数据运算(A2:A5B2:B5),所以必须以数组的形式输入,即按ctrl+shift后按ENTER结束输入。
VLOOKUP函数批量查找
VLOOKUP通常只能查找一项,那么如何查找多项呢?
例3要求列出图表中张毅的所有消费金额。
经过前面的学习,我们也有这样的想法。当我们实现复杂的搜索时,我们关注的重点是如何重构搜索内容和搜索区域。为了实现多次搜索,我们可以对搜索内容进行编号。第一个出现的是下面的连接1,第二个出现的是连接2。
公式:{=VLOOKUP(B$9ROW(A1),IF({1,0},$B$2:$B$6COUNTIF(INDIRECT(b2:bROW($2:$6)),B$9),$C$2:$C$6), 2,)}
公式分析:
1. B$9ROW(A1) 连接序列号。当公式向下复制时,连接1、2、3就变成了B$9。
2. 数出张仪。生成数字需要生成一个不断扩展的区域(INDIRECT(b2:bROW($2:$6)),然后逐行统计这个扩展区域中张翼的数量。连接$B$2:$B$6后,所有的张仪都可以屈指可数。
3. IF({1, 0} 将编号B列和C组重构为两列数组
通过上面的讲解,我们需要知道VLOOKUP函数的基本用法是固定的。为了实现高级搜索,我们需要使用其他函数来重构搜索内容和搜索数组。
VLOOKUP函数的高级使用方法,以上就是本文为您收集整理的VLOOKUP函数的高级使用方法最新内容,希望能帮到您!更多相关内容欢迎关注。