今天给大家带来的属于VLOOKUP函数的反向操作,属于进阶级别的教程。我希望每一位阅读者都能学会并且理解其中的操作,虽然知识点略微复杂,但只有你掌握了复杂的知识点,才能拉开差距。多说无益,我们直接进入主题。
再啰嗦一下,如果你是初学者,请先看这篇VLOOKUP函数的基本原理文章:VLOOKUP函数基本原理篇
众所周知,VLOOKUP函数非常强大,但是人无完人,函数也是如此。VLOOKUP函数的短板就在于它的两个规范。
1:“查找对象”必须在“查找区域”的第一列。
2:“查找区域”必须包括“查找对象”与“返回值”
我们先来简单的做一个正常的VLOOKUP函数操作。如图所示:
表格中有三列,分别为公司、联系人、货物代码。我们的任务是在已知公司的前提下,去查找并引用联系人的信息。这个非常简单,是属于VLOOKUP函数的最基本操作,操作如下:
F5单元格公式:=VLOOKUP(E5,A:C,2,0)
然后我们稍微改变一下任务需求,如图所示。
现在我们的任务是已知联系人,去查找并引用公司的信息。那我们试着操作一下。
F5单元格公式:=VLOOKUP(E5,A:C,1,0)
最后结果是NA错误,也就是找不到的意思。这是什么原因呢?
这是因为这个公式违反了我们VLOOKUP函数的使用规范的第一条,我再写一次这个规范。
1:“查找对象”必须在“查找区域”的第一列。
2:“查找区域”必须包括“查找对象”与“返回值”
查找对象“曾维林”并没有在超找区域A:C的第一列。
现在我有一个新的公式,同样是使用VLOOKUP函数,进行反向操作,可以完成这个任务,我们先看操作,然后再进行详细解释。
F5单元格公式:=VLOOKUP(E5,IF({1,0},B:B,A:A),2,0)
这是一个嵌套函数,这个公式中,我相信大家最看不懂的就是第二个参数IF({1,0},B:B,A:A)。
现在我先提供一个思路,假如能有一个公式,可以把A列和B列互换位置,查找对象就会跑到第一列,岂不是就不会违反VLOOKUP函数的第一条规范。有了思路了,现在我们付出行动,我只需解释一下那个IF函数的意思,大家就明白了。
IF函数原理:=IF(判定条件,成立返回值,不成立返回值)
上面是IF函数的公式原理,相信大家都知道。然后在EXCEL函数中,1和0并不是简单的数字,1=TURE=条件成立;0=FALSE=条件不成立。
C7单元格公式1:=IF(1,A5,A6),1=条件成立,所以返回值为A5=鲁班。
C7单元格公式2:=IF(0,A5,A6),0=条件不成立,所以返回值为A6=程咬金。
相信大家应该了解1和0的概念了,然后我们就要放大招了,来个数组的概念。
花括号是数组的标志,数组的概念就是可以直接返回一组数据,也就是一片区域。
我首先选择了四个单元格区域,然后写出公式=IF({1,0},B4:B5,A4:A5),这个公式的意思就是说,在选择区域中,假如=1,也就是条件成立,就返回B4:B5的内容;假如=0,也就是不成立,就返回A4:A5的内容。大家看最后的结果,岂不是就相当于两列互换的位置。
注意:数组操作的时候最后不是按回车键,而是CTRL+SHIFT+ENTRE。
OK,如果你完全懂了上面的操作,那么请再看下一下之前的这个操作,就会完全理解了。
F5单元格公式:=VLOOKUP(E5,IF({1,0},B:B,A:A),2,0)
其实就是将A列和B列互换位置,其他操作正常而已。好的,今天VLOOKUP函数的反向操作原理就讲解完毕了,希望大家都能学会并且理解其原理,能够举一反三,进而完成更加有利于提高工作效率的操作。
End.
来源:头条号
零基础也能入职数据分析?跨专业想转行数据分析?SQL、Python技能不通过?
中国统计网联合爱数据学院出品的【零基础入职数据分析—就业班】帮你解决转行难,技能不过关等问题!
报名要求:
2.从事数据分析工作,但是需要提升技能以及增加实战经验.