多表数据透视,1%高手的终极大招
在数据统计和分析领域,少不了数据透视表的身影,但是绝大多数人还只停留在单个数据源数据透视的层次,仅有不足1%的高手才会用多表数据透视的终极大招。
这是因为,要连接多个数据源同时数据透视,要么需要SQL查询,要么需要VBA多表合并,所以,这样的高门槛挡住了99%的普通用户。
随着Excel 2016自带的Power Pivot出现,这类问题迎刃而解,普通人也可以点点鼠标就搞定多表透视技术了。
下面就结合一个实际案例,介绍数据建模思路及方法,下文详述。
原始文件中包含两张工作表,分别放置“销售记录表”和“订单明细表”,如下图所示。
要求是根据两张报表,统计每天及各产品销售额,如下图。

细心的同学一定发现,无论哪张工作表,跟实际要求都缺少数据,比如销售记录表中没有金额信息,订单明细表中没有日期数据。
先说思路,遇到这种多表关联透视问题,首先要找到报表之间的关联字段,拿当前案例来说就是“订单编号”。
我们可以先把两张数据源表添加到数据模型,然后再创建关联,根据需要添加度量值,最后利用Power Pivot多表透视。
思路架构清晰,下面执行操作,先来添加数据源到模型。
先将销售记录表创建为超级表,如下图所示。

然后将其命名为“销售记录表”。

再将订单明细表创建为超级表

将其命名为“订单明细表”。

将两张超级表添加到数据模型,如下图所示。
如果你的Excel功能区找不到Power Pivot选项卡,可以从Excel选项的COM加载项添加。

添加成功后,进入Power Pivot编辑界面,左下角可以显示两张数据源表。

下面给模型中的报表之间建立关联关系
单击“关系图视图”切换到关系视图,将销售记录表中的“订单编号”字段拖到订单明细表中相同字段上,Excel会生成一条一对多关联关系线,说明关联成功。

然后根据实际需求添加度量值。
由于本案例要求计算的金额=单价*数量,所以创建度量值“金额”公式如下:
金额:=sumx('订单明细表','订单明细表'[销售单价]*'订单明细表'[数量])

数据条件齐全,开始创建超级数据透视表,如下图所示。

根据想要的效果,设置透视表字段布局,可以从不同的报表中选择字段构建透视表,轻松实现多表关联。
当然,需要用到的金额也可以在字段列表中看到,前面带着fx标识。

你看,无需SQL无需VBA,Power Pivot牛刀小试,轻松搞定多表数据透视。
更多经典的实战技能,已整理成超清视频的系统课程,方便你系统提升。
如果你喜欢超清视频同步演示讲解的课程,下方扫码查看↓

