Vlookup横竖查询,大家在做周报,月报和季报时,会经常用到,特别是做数据分析的个人或部门,如财务部,采购部,销售部,人事部等。
财务部,根据月份和部门,查询部门费用。采购部,根据月份和采购员,查询采购金额。销售部,根据月份和区域,查询销售额。人事部,根据月份和部门,查询工资。案例。
如以下数据,我们要根据月份和区域查询销售额。根据前面几篇文章介绍的经验,我们可以归类为多条件查询。但条件是横竖分布的,和以前介绍过的不一样。
我们该如何处理呢?
下面分享横竖查询的几种方法。
第一种方法。添加辅助列的横竖查询。
步骤1. 在销售额前插入辅助列E列。在辅助列E2输入=A2&B2,并向下复制填充。
步骤2. 创建复合查询条件,$J2&K$1。根据上篇文章介绍的多列数据查询的经验,条件横向分布的,要加$锁定行号;条件竖向分布的,要加$锁定列号。
步骤3. 将以上复合查询列和复合查询条件代入Vlookup公式。
在K2输入公式=VLOOKUP($J2&K$1,E:F,2,0)。并向下复制填充。
步骤4. 同理,
在L2输入公式=VLOOKUP($J2&L$1,E:F,2,0)。并向下复制填充。在M2输入公式=VLOOKUP($J2&M$1,E:F,2,0)。并向下复制填充。在N2输入公式=VLOOKUP($J2&N$1,E:F,2,0)。并向下复制填充。第二种方法。Vlookup+if. 不需要添加辅助列。
如果不能修改报表格式,或不想添加辅助列,或想展示一下自己的高超的Excel技能,就可以使用vlookup+if的方式。
步骤1. 创建两列复合数据列。公式为 IF({1,0},A:A&B:B,E:E)
第一列,A:A&B:B。将A列和B列连接成一列。第二列,E:E。是结果列销售额。If({1,0})的目的是将第一列和第二列组合成一个两列的数组。步骤2. 创建复合查询条件,$I2&J$1。同第一种方法。
步骤3. 将以上复合查询列和复合查询条件代入Vlookup公式.
在J2输入公式=VLOOKUP($I2&J$1,IF({1,0},A:A&B:B,E:E),2,0)。并按Ctrl+Shift+Enter组合键。再向下复制填充。
步骤4. 同理,
在K2输入公式=VLOOKUP($J2&K$1,IF({1,0},A:A&B:B,E:E),2,0)。并按Ctrl+Shift+Enter组合键。再向下复制填充。在L2输入公式=VLOOKUP($J2&L$1,IF({1,0},A:A&B:B,E:E),2,0)。并按Ctrl+Shift+Enter组合键。再向下复制填充。在M2输入公式=VLOOKUP($J2&M$1,IF({1,0},A:A&B:B,E:E),2,0)。并按Ctrl+Shift+Enter组合键。再向下复制填充。第三种方法。Vlookup+choose. 不需要添加辅助列。
原理同第二种方法,只是将if换成choose.
步骤1. 创建两列复合数据列。公式为 Choose({1,2},A:A&B:B,E:E)
第一列,A:A&B:B。将A列和B列连接成一列。第二列,E:E。是结果列销售额。Choose({1,2})的目的是将第一列和第二列组合成一个两列的数组。步骤2. 创建复合查询条件,$I2&J$1。同第一种方法。
步骤3. 将以上复合查询列和复合查询条件代入Vlookup公式.
在J2输入公式=VLOOKUP($I2&J$1,Choose({1,2},A:A&B:B,E:E),2,0)。并按Ctrl+Shift+Enter组合键。再向下复制填充。
步骤4. 同理,
在K2输入公式=VLOOKUP($I2&K$1,Choose({1,2},A:A&B:B,E:E),2,0)。并按Ctrl+Shift+Enter组合键。再向下复制填充。在L2输入公式=VLOOKUP($I2&L$1,Choose({1,2},A:A&B:B,E:E),2,0)。并按Ctrl+Shift+Enter组合键。再向下复制填充。在M2输入公式=VLOOKUP($I2&M$1,Choose({1,2},A:A&B:B,E:E),2,0)。并按Ctrl+Shift+Enter组合键。再向下复制填充。第四种方法。Sumproduct. 不需要添加辅助列。
此方法只适用于,查询结果为数值的情况。但比以上方法简单一些,不用添加辅助行,不需要设置复合数据列,不需要按Ctrl+Shift+Enter组合键。
步骤如下。
在J2输入公式=SUMPRODUCT((A:A=$I2)*(B:B=J$1),E:E) ,并向下复制填充;
在K2输入公式=SUMPRODUCT((A:A=$I2)*(B:B=K$1),E:E) ,并向下复制填充;
在L2输入公式=SUMPRODUCT((A:A=$I2)*(B:B=L$1),E:E) ,并向下复制填充;
在M2输入公式=SUMPRODUCT((A:A=$I2)*(B:B=M$1),E:E) ,并向下复制填充;
Sumproduct的语法结构为: Sumproduct((查询区域1)=条件1)*(查询区域2=条件2),结果区域)。前面的违章“Vlookup之多条件查询”有介绍过,大家可以翻阅前面的文章。
第五种方法。Sumproduct +绝对引用. 不需要添加辅助列。
此方法和第四种方法相同。区别在于第四种方法需要设置多个sumproduct公式。而此种方法,只需要设置一个sumproduct公式。
但缺点在于,必须对绝对引用非常熟悉。
步骤如不:
在J2输入公式=SUMPRODUCT(($A:$A=$I2)*($B:$B=J$1),$E:$E),并向下向右复制填充。如果对绝对引用不熟悉的朋友,还是使用前面几种方法。
大家还有其他横竖查询的方法吗?
以后总会用得上,值得关注,收藏,点赞,转发。