a表两个字段都与b表一个字段关联_多个有关联的Excel数据表能一起透视分析吗?Power Pivot专治不服...

如果有若干张数据表,每个数据表的字段都不尽相同,但是各个表之间至少有一列共同列,可以将所有表关联起来。如何将这些数据表连接起来用数据透视表分析?

好比是 A 认识 B,B 认识 C,所以 A、B、C 三人之间存在着间接关系。那么,如何将这些有间接关系的数据表放到同一个数据透视表中进行分析呢?

这就需要用到今天要教的神器 Power Pivot。

案例:

下图中有三个数据表,分别列出每个班级的班主任、每个班级的学生、每个学生的各科成绩。

请用数据透视表将下面三张表连接起来做分析,比如,统计每个老师班级的各科平均分。

e922c406550f3f9df051ca62604e2295.png

开篇已经介绍了,今天的案例需要用到 Power Pivot 来解,那我就先给大家简单介绍一下 Power Pivot。

什么是 Power Pivot?

  • Power Pivot 提供了 Microsoft Excel 的高级数据建模功能,主要用于创建数据模型、建立关系,以及创建计算。
  • Power Pivot 可以用于处理大型数据集,构建广泛的关系,以及创建复杂的计算。

如何启用 Power Pivot?

1. 在 Excel 菜单栏中选择“开始”-->“选项”

52c5a473e0181163daacbad3a83c5b25.png
3d69fef00aa4be51735cd6e4f4f25111.png

2. 在弹出的对话框中选择“加载项”--> 在“管理”的下拉菜单中选择“COM 加载项”--> 点击“转到”按钮

6d88a95ba7b996fd171d4e35466fbd43.png

3. 在弹出的对话框中勾选 Microsoft Power Pivot for Excel --> 点击“确定”

1e43878272c0cd40590ad726bfb551a1.png

现在菜单栏上就出现了 Power Pivot 选项。

7445f453850e45af8ede865abcb48401.png

接下来就正式开启今天的教程。

解决方案:

1. 选中第一个数据表的任意单元格 --> 选择菜单栏的 Power Pivot -->“添加到数据模型”

79c71cbc34dcf808d4e820f4dbab1e15.png

2. 在弹出的对话框中点击“确定”

39bf213a12443aeb7ebcba55f57aab53.png

第一个数据模型已经添加好了。

cc75975754ed80b1e67ef55cf5125ad9.png

3. 用同样的方式将另外两个数据表也添加到数据模型。

71c2ea919bf4ade81180679c1c946e67.png

4. 选择菜单栏的“主页”-->“关系图视图”

3f2b3e21a792ea7fe0b011db5811f5a0.png
64bcc037b1c9ae61b7c0bf275d92ea2b.png

5. 分别将不同表中的相同字段拖动到一起,从而创建表格的两两连接关系。

1d03b0983315b15f04a19c0e81fec6e9.gif
37947d747fa559fce3cd65f891d4c6fa.png

6. 选择菜单栏的“主页”-->“数据透视表”-->“数据透视表”

0bb245218a73dc1a4a491087e2f85632.png

7. 此时回到了 Excel,出现“创建数据透视表”对话框。为了方便演示,我创建在现有工作表中 --> 点击“确定”

1fead73e71f54ff79e520437f834cb70.png
53261284f32c690a1a9c3ebd5e97b340.png

8. 在右边的“数据透视表字段”区域中依次点开每个表,就能看到各个表的字段,现在就可以用我们熟悉的方法对三张表一起做透视分析了。

将“老师”和“成绩”分别拖动到“行”和“值”区域。

f8f65636c967e67a6d890dfb9f9b17f3.png
b7f6d07468e1c0f3b5cabb3dfdfbd370.png

9. 选中“值”区域中的字段,右键单击 --> 在弹出的菜单中选择“值字段设置”

6dfa17660d800578c194839643cd565c.png

10. 在弹出的对话框中选择计算类型中的“平均值”--> 点击“数字格式”

881f1e1d5d8a2639472bba56c32ce436.png

11. 在弹出的对话框中选择“自定义”--> 在“类型”区域输入“0”,表示取整 --> 点击“确定”

e175306905787e055c9cb88e505b0c1c.png

12. 点击“确定”

687f6817d4ecdc4474ac4b535e8c1fa9.png

现在就透视出了每位老师班内所有学生的平均分。如果还要分别统计每门课的平均分,继续往下看。

07509c84cdaaad4250849ecfdfb2de4f.png

13. 将“学科”拖动到“行”区域。

129bdbc0b801d2543417f46894de75d4.png
012eb713923f1322a44f8f368c7402e0.png

14. 如果还要分析每个班级有几个学生,那就将“班级”字段拖动到“老师”上方,“姓名”拖动到“成绩”上方即可。

78d595bcbe450a94ab0be57630f9154d.png
94119587cc95e1de6951b1e9a8c23dbd.png

无论想要从什么角度分析,只要根据需要拖动字段就可以了。数据透视表大家都熟悉,就不一一举例了。

很多同学会觉得 Excel 单个案例讲解有些碎片化,初学者未必能完全理解和掌握。不少同学都希望有一套完整的图文教学,从最基础的概念开始,一步步由简入繁、从入门到精通,系统化地讲解 Excel 的各个知识点。

现在终于有了,以下专栏,从最基础的操作和概念讲起,用生动、有趣的案例带大家逐一掌握 Excel 的操作技巧、快捷键大全、函数公式、数据透视表、图表、打印技巧等……学完全本,你也能成为 Excel 高手。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
可以通过以下步骤实现: 1. 在一个新的Sheet中创建汇总数据透视表,并设置好数据透视表的格式。 2. 编写一个VBA宏,遍历所有需要生成数据透视表的Sheet。 3. 在遍历过程中,对每个Sheet进行以下操作: - 选中需要生成数据透视表的数据区域。 - 创建数据透视表,并设置好数据透视表的格式。 - 将数据透视表的数据复制到汇总数据透视表的下方。 4. 运行VBA宏,生成所有数据透视表,并将它们汇总到汇总数据透视表中。 以下是一个示例VBA宏: ```VBA Sub GeneratePivotTables() Dim summarySheet As Worksheet Dim dataSheet As Worksheet Dim lastRow As Long Dim pivotTable As PivotTable Dim pivotCache As PivotCache '获取汇总数据透视表所在Sheet Set summarySheet = ThisWorkbook.Sheets("Summary") '清空汇总数据透视表下方的所有数据 summarySheet.Range("A2:Z1000").ClearContents '遍历所有需要生成数据透视表的Sheet For Each dataSheet In ThisWorkbook.Sheets If dataSheet.Name <> summarySheet.Name Then '选中需要生成数据透视表的数据区域 lastRow = dataSheet.Cells(Rows.Count, 1).End(xlUp).Row dataSheet.Range("A1:B" & lastRow).Select '创建数据透视表 Set pivotCache = ThisWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:=Selection) Set pivotTable = pivotCache.CreatePivotTable(TableDestination:=summarySheet.Range("A" & Rows.Count).End(xlUp).Offset(1), TableName:="PivotTable" & dataSheet.Name) '设置数据透视表的格式 With pivotTable .PivotFields("Column1").Orientation = xlRowField .PivotFields("Column2").Orientation = xlColumnField .AddDataField .PivotFields("Data"), "Sum of Data", xlSum End With '复制数据透视表的数据到汇总数据透视表下方 pivotTable.TableRange2.Copy summarySheet.Range("A" & Rows.Count).End(xlUp).Offset(1) End If Next '自动调整汇总数据透视表的列宽和行高 summarySheet.Cells.EntireColumn.AutoFit summarySheet.Cells.EntireRow.AutoFit End Sub ``` 注意:在运行该宏前,需要先在工作簿中创建一个名为"Summary"的Sheet,并在该Sheet中创建好汇总数据透视表的格式。同时,该示例宏假设每个需要生成数据透视表的Sheet中的数据区域为A1:Bn,其中第一列为"Column1",第二列为"Column2",第三列为"Data"。你需要根据你的实际情况进行修改。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值