如何根据多个条件匹配数据 如何匹配数据


工作中,我们常常遇到按照两个条件进行数据匹配(或查询)的情况 。

如何根据多个条件匹配数据 如何匹配数据

文章插图
▲ 表1:数据源
例如,根据表1数据源的日期和科目来匹配费用到表2,我们权且把这种匹配称为二维到一维匹配 。
如何根据多个条件匹配数据 如何匹配数据

文章插图
▲ 表2:目标表
又或者反过来,也有可能根据一维表(下表3):
如何根据多个条件匹配数据 如何匹配数据

文章插图
▲ 表3:数据源
匹配费用数据列表4:
如何根据多个条件匹配数据 如何匹配数据

文章插图
▲ 表4:目标表
我们也把这种匹配先称之为一维到二维 。
今天,我来介绍一、二维表格数据匹配的几种方法 。
01 二维到一维方法1:INDEX MATCH
如何根据多个条件匹配数据 如何匹配数据

文章插图
首先,用MATCH函数分别求出数据行的日期和科目在数据源日期列(B3:B9)和科目行(C2:P2)的位置,然后在C3:P9这个区域利用INDEX索引函数,找到指定行和列对应的数值 。
方法2:VLOOKUP MATCH
如何根据多个条件匹配数据 如何匹配数据

文章插图
先用MATCH找到科目所在列,再用VLOOKUP根据日期来查找(注意,第3个参数MATCH的结果要加1,因为第1列是从B列算起的) 。
方法3:HLOOKUP MATCH
如何根据多个条件匹配数据 如何匹配数据

文章插图
方法3与方法2类似,但是先用MATCH找到日期所在行,再用HLOOKUP根据科目来匹配费用 。
方法4:OFFSET MATCH
如何根据多个条件匹配数据 如何匹配数据

文章插图
OFFSET函数不仅可以返回一个区域,也可以返回一个单元格 。所以,当OFFSET最后两个参数为1时,即可返回特定位置的数据 。
OFFSET函数可以根据偏移量返回数据,它有5个参数:
参数1:起始位置
参数2:向下移动X行
参数3:向右移动Y列
参数4和参数5:从新的位置开始返回一个M行N列的区域
02一维到二维
如何根据多个条件匹配数据 如何匹配数据

文章插图
▲ 数据源:B2:D51
反过来,从一维到二维,又有哪些方法呢?
方法1:SUMPRODUCT
如何根据多个条件匹配数据 如何匹配数据

文章插图
公式:SUMPRODUCT(($B$3:$B$51=$B59)*($C$3:$C$51=C$58)*$D$3:$D$51)
利用SUMPRODUCT进行条件判断,判断数据源日期和科目字段中每个单元格是不是要查询的日期和科目,对满足条件的数据进行先乘积再求和,最后就得到费用 。
由于存在查询不到数据的情况(比如2010年职工薪酬),用SUMPRODUCT计算的结果为0,因此可以用IF函数做一下处理,使结果为0的显示为空 。
方法2:VLOOKUP IF{1,0}
公式:{VLOOKUP($B71


    以上关于本文的内容,仅作参考!温馨提示:如遇健康、疾病相关的问题,请您及时就医或请专业人士给予相关指导!

    「四川龙网」www.sichuanlong.com小编还为您精选了以下内容,希望对您有所帮助: