excel表格_excel函数公式大全_execl从入门到精通
Excel技巧讲解(五)-VLOOKUP函数怎么用 之 逆向查询2024-05-08 13:18:11
Excel技巧讲解(五)-VLOOKUP函数怎么用 之 逆向查询
VLOOKUP逆向查询技巧我们已经通过前面的讲解,掌握了VLOOKUP函数的多种查询技巧,但是我们发现VLOOKUP只能是从首列开始查找,只能是返回表格中首列右侧的内容,不能逆向查找及返回。当然,我们可以通过手动将查找项位置调整来实现查找原本位于左侧的内容,但有没有一种方法可以直接实现VLOOKUP逆向查找?答案肯定是可以的,今天就为大家详解VLOOKUP逆向查找的方法。VLOOKUP逆向查找需要用到的新知识是数组函数,首先我们做一下知识铺垫:1、IF(条件,返回值1,返回值2)
如果条件为真,函数的结果为“返回值1”,如果条件为假,函数的结果是“返回值2”;
2、了解数组
{1,2,3,4}是一个水平数组,数组的表示方式是{},一个数组能存储多个数值,它有4个值;
{1;0}一个垂直数组,它有2个值;
逗号分隔表示是水平数组,分号分隔表示是垂直数组。
3、连接符&
"A" & "B" & "C"="ABC"
字符串可以连接,数组也可以连接:{1,2,3}&{"A","B","C"}={"1A","2B","3C"}
4、IF({1,0},值A,值B)
根据两个条件,分别返回IF的两个值,同时把两个结果组成一个数组,条件不限于两个,可以是多个,就是不仅限于{1,0},也可以是{1,0,1}、{1,0,1,1}等,那么就返回相应多个结果的数组。
我们把以上的技巧组合起来,IF({1,0},区域A,区域B),我们知道if()函数中,若第一参数为1,则返回第二个参数(区域A),所以区域A在新数组的第一个位置;若第一参数为0,则返回第三个参数(区域B),所以区域B在新数组的第二个位置,注意此处1与区域A对应,0与区域B对应,即区域A与区域B重新构建了一个水平数组数据区域{区域A,区域B},水平数组{区域A,区域B}相当于一行两列的单元格。
示例图片1VLOOKUP是横向查找函数,要查找的条件(值)必须在查找范围的第一列,用上if({1,0},,)就可以通过重构数组区域实现反向查找,后面两列分别表示查找的条件范围和要返回值的范围。应用场景:我们还是以学生学号与姓名作简单举例,学生学号是唯一标识的主键,并假定没有重名的学生,我们有一个学生学号与姓名的全表,我们如何在另一个表内通过学生姓名快速查找出学生的学号信息?具体公式为:=VLOOKUP(D2,IF({1,0},B:B,A:A),2,0),使用IF函数重构一个水平数组{B:B,A:A},也就是一个{姓名,学号}的水平数组,通过VLOOKUP函数在临时性的{姓名,学号}水平数组中,查找出对应姓名的学号信息,间接实现逆向查找功能。
示例图片2延伸拓展:结合上一次的讲解,通过IF({1,0}和VLOOKUP函数可以实现Excel的双条件或多条件逆向查找:
=VLOOKUP(条件1&条件2,IF({1,0},条件1范围&条件2范围,结果范围),2,0)
=VLOOKUP(B1&C1,IF({1,0},B:B&C:C,A:A),2,0)
其中:IF({1,0},B:B&C:C,A:A)建立一个包含两列数据的临时水平数组,第一列为B列与C列同一行值合并结果,第二列为A列值。
标签: excel怎么把一行数据反向