如果说你能够熟练运用Excel函数中的查询家族,可以说大多数的问题你都可以解决了。但很多情况下,我们会遇到脑壳疼的问题,比如你看看下面的例子。
下图中,需要在右边的表格中通过E列的机型查找其对应的品牌,按以往的查询方式,发现自己的公式没错,但查出来的结果很多都是0。
这是什么原因呢?
以前我们都是通过一对多查询,现在我们想通过多对一来查询,查询的结果是一个合并的单元格,所以你应该要知道合并单元格之后,每个单元格的内容是否一致。
下图我们在D3单元格中输入公式“=B3”,并将公式下拉至D14单元格,发现只有D3,D7,D113个单元格是有内容的,其余都为0,这就导致了我们上图中为什么查询的结果会为0,也就是说合并的单元格并不是每一个单元格的内容都是相等的。
再给你看下合并后的单元格和合并前的单元格,你就能清除上图中查询结果为0是什么原因造成的。
下面我教你怎么用函数公式来查找合并单元格的值。
具体操作步骤如下:
1、选中F3单元格 -- 在编辑栏中输入公式“=LOOKUP("座",INDIRECT("B3:B"&MATCH(E3,$C$3:$C$14,0) 2))”-- 按回车键回车 -- 将公式下拉至F8单元格即可。
2、动图演示如下。
3、公式解析。
MATCH(E3,$C$3:$C$14,0):返回E3单元格的内容在C3:C14单元格区域中的位置。这里的结果是1,但因为我们C3前面还有一行空行和标题行,所以加上2。
INDIRECT("B3:B3"):由MATCH(E3,$C$3:$C$14,0) 2返回的结果为3,所以INDIRECT("B3:B"&MATCH(E3,$C$3:$C$14,0) 2)相当于INDIRECT("B3:B3"),INDIRECT函数的意思是引用指定文本字符串的内容,所以这里返回B3单元格的内容“华为”。
=LOOKUP("座",INDIRECT("B3:B7"):LOOKUP函数有2种用法,一种是数组,一种是向量。这里只有2个参数,显然是数组形式的用法。查找值“座”在汉字中很靠后,用“座”的本意相当于我们在一个单元格区域中匹配最后一个出现的数值。INDIRECT("B3:B7")返回的结果是{"华为";0;0;0;"苹果"},所以=LOOKUP("座",INDIRECT("B3:B7")返回的结果为“苹果”。
当然,如果能不合并单元格就尽量不合并,毕竟你遇到的问题可能不止这些!
以上就是今天的教程,公式虽然不是很难,但还需要大家花时间去消化,毕竟看10遍还不如自己动手练一遍!