在第3讲中,我们初步见识了Match函数Index函数结合在一起的威力。
可是有bug:Match函数只能在1列或1行当中查找满足1个条件的单元格位置。那如果有多个条件呢?这就涉及到多条件查询了。
有一张电视产品单价表,现在需要按产品品牌和型号来查询单价,总体布局和任务要求如下:
任务要求:运用公式,根据输入的品牌和型号查询单价
1.案例明确要求用公式来完成作务,目的在于公式的可复制性,增加扩展性。
2.要查询单价,必须先知道品牌+型号对应数据所在行,获取一个数据在某个区域所在的位置,我们想到的是match函数。但是有两个问题。
问题1:match函数只能查找一个条件值。
问题2:match函数只能单行或单列区域查找。
如何解决?这是问题的关键所在。
3.在明确了所在行数,利用index函数,在A3:C10单元格区域中取出单价,是轻而易举的事情。
重点:巧用连接符“&”解决难点问题
作用:可以将若干内容连接在一起,生成一个新内容。同理,可以将若干个单元格内容连接在一起,生成一个新内容。
Match函数第1个问题解决:把两个查询条件变成一个查询条件
具体操作动图如示:
Match函数第2个问题解决:把两个查找区域变成一个查找区域
上面讲解的是将两个单元格的内容连接在一起,那么可不可将两个区域的东西连接在一起呢?
仍然可以采用连字符“&”实现。但是有一个情况需要注意,两个区域连接后的结果仍然是一个区域,不是一个单元格。所以,要想一次性得到连接结果,需要这样做:
第1:选中I3:I10单元格区域
第2:在I2单元格输入公式 =A3:A10&B3:B10
第3:同时按ctrl+shift+enter三键结束(因为公式当中产生的结果是一个区域)
具体操作动图如示:
这样,我们就将两个查询条件变成一个查询条件,将两个查找区域变成一个查找区域,可以去解决这个案例了。
第一步:应用match函数,确定满足两个查找条件值在A3:B10区域中的行数。
在G5单元格中输入:=match(E5&F5,$A$3:$A$10&$B$3:$B$10,0)
按ctrl+shift+enter可以看结果。这个结果代表的就是满足两个查找条件值在A3:B10区域中的行数。
具体操作如动图如示:
第二步:应用index函数,在A3:C10区域里查找以上步结果为行数,第3列的结果。
修改G5单元格的公式为:
=index($A$3:$C$10,match(E5&F5,$A$3:$A$10&$B$3:$B$10,0),3)
按ctrl+shift+enter 得结果。
具体操作如动图如示:
第三步:对G6单元格复制G5单元格的公式。
到此,案例任务全部完成。
面对具体问题,采取逐步分析的方法,将问题进行分解,可以很好地理清我们的思路,帮助我们找到解决办法。
为了方便小伙伴们学习,我们的将原始素材共享出来,获取素材的方法:
第一步:关注严Sir课堂。
第二步:私信 严Sir课堂,因为设定的是自动回复,所以内容一定要准确
私信内容:练一练
第三步:根据得到的链接自行下载。
联系客服