HI,大家好,我是星光。
如果你经常用Excel,应该对Power Pivot多少有所耳闻,但通常也仅限有所耳闻:它到底是个啥?能做啥?值不值得学那个啥?就不甚了解了。如果你感兴趣,咱们今天就一起来聊聊它。
什么是...
Power Pivot for Excel
Power在英文中是力量的意思,而Pivot table是透视表的英文名,因此Power Pivot就被称为超级透视表。

——由此可见起一个厉害的大名有多么重要。
当然,这也不妨碍别人给你起个拉胯的小名,比如Power Pivot的小名就叫PP。

PP也确实人如其……大名。
我们知道传统的Excel透视表集合了排序、筛选、分类汇总等数据分析常用功能,可以很方便的调整分类汇总的方式,以多种不同形式展示数据的特征;功能十分强大,操作极其简单,是Excel里学习性价比最高的功能,没有之一。
但是——它也有很多局限性。例如,缺乏丰富的汇总计算函数,也无法快速糅合处理多种来源的数据,而这样的问题在数据来源愈发趋于多样的数据化时代越来越常见。
于是微软在2013版Excel中就推出了……PP。
按照官方说法,PP旨在为用户提供自助式商务智能,使用户在无须BI技术人员介入的情况下就可以执行复杂的数据分析。它在Excel中首次引入了"关系"和"数据模型"的概念,可以从多个不同类型的数据源将数据导入到Excel的数据模型中并创建关系,进而对数据进行深度挖掘和分析。
上段出现了两个关键词:数据模型和关系,这里需要额外解释一下。
Excel数据模型是一个可以储存大量数据的复杂列式数据库,它通过在多表之间创建"关系",使一组表格成为一个数据模型;所以所谓数据模型就是指存在关系的一组表格。
而所谓"关系",可以理解为表和表之间的联系,它包含了源表、外键列、目标表和主键列等元素;关系一旦建立,用户便可以很自由的检索相关表的任意列数据——对Excel用户而言,这是Power Pivot最实用的地方,没有之一。
只说不练假把式,接下来给大家举一个典型的PP例。
创建关系数据模型
左是学生信息表右是成绩表..▼
怎么办?
常规的解决方案是使用函数在成绩表将班级等信息补充完整,比如,在成绩表D列输入以下函数查询学号的班级归属。
=VLOOKUP(A2,学生信息表!A:C,3,0)
然后再使用成绩表的数据创建透视表...▼
但这一套打法遇见大数据时表现不佳,毕竟函数的运算效率不是很理想,另外拓展性也比较差,如果还需要查看每个人的平均分呢?如果数据源数据有大量新增呢?如果不只是两张表需要合并信息,而是3、4、5、6等更多张表呢?
PP的解决方案如下....
步骤1
单击"学生成绩表"数据区域的任一单元格,例如B2单元格,在【Power Pivot】选项卡下,单击【添加到数据模型】按钮。同样的方式,将“学生信息表”的数据也添加到数据模型。
步骤2
步骤3
切换到【设计】选项卡,单击【创建关系】按钮。在弹出的【创建关系】对话框中,表1设置为学生信息表,并单击选中"学号"列,表2设置"学生成绩表",单击选中"学号"列,最后单击【确定】按钮,依据"学号"列建立两表关系。
步骤4
切换到【主页】选项卡,单击【数据透视表】按钮,在弹出的【创建数据透视表】对话框中,依次单击【新建工作表】→【确定】。
步骤5
"关系"一旦正确建立,用户便可以检索相关表的任意列数据,比如需要查看每个人的平均分,只需要将学生信息表的姓名拖入透视表的行区域,学生成绩表的得分拖入值区域即可。
另外关系并不仅限于两张表,也可以构建在更多张表之间;有朋友说这等于让每张表天然产生了VLOOKUP函数……听起来是不是很酷?
但Power Pivot能做到的远不止这些,它还支持自我编程,可以实现透视表自身无法实现的各种数据运算,比如在值区域合并多个字符串、在日期维度上轻松实现更多复杂运算等——
不过限于篇幅原因,咱们今天就分享到这。左上角点关注,右下角点个赞,咱们下期再见~
🌹小贴士:
默认情况下,Excel功能区并不显示PP,用户可以在【开发工具】选项卡下单击【COM加载项】命令,在弹出的对话框中勾选"Micorosoft Power Pivot for Excel"复选框,最后单击【确定】按钮。
示例文件下载,百度网盘...▼
https://pan.baidu.com/s/1PV7vt_kYdIIrWTNcrhsxvg
提取码: 8in5
The End
扫一扫关注我们,
更多技巧早知道!

