Hello,大家好,今天跟大家讲解下在VLOOKUP的反向查询与多条件查询中经常出现的IF{1,0}它究竟是什么作用,以及整个函数是如何计算的,最近有粉丝问道这样的问题,发了视频很多人表示没看懂,今天分享一篇文章来跟大家详细的讲解下,想要理解这个公式,关键是了解数组的计算规则

一、数组是什么?

我们常见的数据都是独立的一个一个的存放的单元格中,而数组是将一组结构相同的数据按照一定的规律进行排列组成的,组成数组的数据我们统称为元素,元素可以是:数值,文本,日期,逻辑值或错误值等,简单来说只要这一组数据的结构是相同的即可。

数组中的元素共同参与计算,不能单独计算。数组中的元素都是用大括号括起来的,并且在填充数组的时候我们需要按CTRL SHIFT 回车来三键填充公式

如下图所示绿色的数据区域就是一个数组,在编辑栏中可以看到从1到6是用大括号括起来的

excel表if公式和vlookup函数(Excel难题解析vlookup函数中的if)(1)

前面提到:数组中的元素共同参与计算,不能单独计算,我们来看下效果,比如在这里我们为数组 1。首先选择对应的数据区域,然后在编辑栏中选择数组区域,直接为这个区域加 1然后按下Ctrl shift 回车填充公式。

结果会得到一列新的数组,它们的元素个数是一一对应的,并且所有的元素都会增加1,这就是数组运算的特点

excel表if公式和vlookup函数(Excel难题解析vlookup函数中的if)(2)

想要理解vlookup IF{1,0},数组的知识我们了解这么多就可以了,如果你还想了解数组的更多内容,可以参考下这篇文章

Excel函数水平高低的分水岭——数组,掌握它你就是大神

二、公式解析

我以多条件查询的公式为例跟大家讲解下公式的计算过程,如下图我们想要查找行政部张飞的考核得分,只需要将公式设置为:=VLOOKUP(E2&F2,IF({1,0},A2:A12&B2:B12,C2:C12),2,FALSE)即可找到正确的结果,首先我们来分析这个公式的构成

excel表if公式和vlookup函数(Excel难题解析vlookup函数中的if)(3)

第一参数:E2&F2,将姓名与部门连接在一起构成一个新的查找值:张飞行政部

第二参数:IF({1,0},A2:A12&B2:B12,C2:C12),利用if函数构建新的查找区域,这个我们下面着重讲解

第三参数:2,表示我们查找的结果在查找区域(第二参数)的第二列

第四参数:0,表示精确匹配

这个公式的最难理解的参数就是它的第二参数,下面我们来着重的讲解下

三、{1,0}的运算原理

Vlookup函数的第二参数它的主体是一个IF函数,所有首先我们来看下这个函数的具体参数与构成

公式:=IF({1,0},A2:A12&B2:B12,C2:C12)

第一参数:{1,0},IF的第一参数的结果是一个逻辑值,现在却是{1,0},在这里我们可以将1看做是true条件正确,将0看作是false条件错误,还需要注意的是1跟0是用大括号括起来的,所以它是一个数组

第二参数:A2:A12&B2:B12,它的作用是将姓名列的数据与部门列的所有连接在一起

第三参数:C2:C12,考核得分所在列的数据

excel表if公式和vlookup函数(Excel难题解析vlookup函数中的if)(4)

第一个参数是一个数组,它会与后面的第二与第三参数分别计算从而产生一个新的数组,在下图中蓝色区域是第二参数的结果,黄色区域是第三参数的结果,我们来看下这个函数的计算结果

第一步:函数会将1代入IF函数的第一参数,表示条件正确,IF函数就会返回它的第二参数也就是:狄仁杰财务部。

第二步:函数会将0代入IF函数的第一参数,表示条件错误,就会返回第三参数结果为90

至此第一行对应的数据就计算完毕了,随后会进入第二行

第三步:将1代入第一参数,条件正确就会返回函数对应的第二参数结果为王生安财务部

第四步:将0代入函数,表示条件错误,这时候函数会返回64这个结果

以此类推,函数会将所有对应的数据都计算一次,得到右侧的二维数组,这个就是vlookup函数的第二参数,这也解释为什么要将vlookup函数的第三参数设置为2

以上就是今天分享的全部内容,相信对于很多人来说今天的分享是比较难的,关键是要理解数组的计算方式。

我是Excel从零到一,关注我,持续分享更多Excel技巧

,