点击上方蓝字 --> 点击“...”--> 选择“设为星标”
这位网友的求助题也是颇另类了,他有好几个二维数据表,表表相关,分别是父类、子类、孙子类关系,依次类推。看似简简单单的几个表,展开竟然有 4 层关系。
他想把几个表关联起来,还原成一个总表。恕我直言,这么复杂的需求,也只有靠 Power Query 才能把解题过程变得如此简单。
案例:
下图 1 是三个关联的二维表。请将三个表合并起来计算最终结果,按照图 1 的逻辑,最终结果应该是各个表中关联条件的数值相乘。
效果如下图 2、3 所示。
解决方案:
1. 选中第一个数据表的任意单元格 --> 选择菜单栏的“数据”-->“从表格”
2. 在弹出的对话框中保留默认设置 --> 点击“确定”
数据已上传至 Power Query。
3. 保持选中第一列 --> 选择菜单栏的“转换”-->“逆透视列”-->“逆透视其他列”
4. 选择菜单栏的“主页”-->“关闭并上载”-->“关闭并上载至”
5. 在弹出的对话框中选择“仅创建连接”--> 点击“加载”
6. 重复同样的步骤依次将第二和第三个表加载到 Power Query,并逆透视成一维表。
7. 在工作表右侧的“工作簿查询”区域选中“表1”--> 右键单击 --> 在弹出的菜单中选择“编辑”
再次进入了 Power Query。
8. 选择菜单栏的“主页”-->“合并查询”-->“合并查询”
9. 在弹出的对话框中按以下方式设置 --> 单击“确定”:
选择“表1”的“属性”列
在下拉菜单中选择“表2”--> 选择“风险”列
10. 点开“表2”旁边的扩展按钮 --> 取消勾选“风险”和“使用原始列名作为前缀”--> 点击“确定”
11. 再次选择菜单栏的“主页”-->“合并查询”-->“合并查询”
12. 在弹出的对话框中按以下方式设置 --> 点击“确定”:
选择“表1”的“属性.1”列
在下拉菜单中选择“表3”--> 选择“分类”列
13. 点开“表3”旁边的扩展钮 --> 取消勾选“分类”和“使用原始列名作为前缀”--> 点击“确定”
14. 选择菜单栏的“添加列”-->“自定义列”
15. 在弹出的对话框中按以下方式设置 --> 点击“确定”:
新列名:输入“数量”
在公式区域将公式设置为 3 列值相乘
16. 删除之前导入的 3 列值。
17. 修改默认的列名。
18. 选择菜单栏的“主页”-->“关闭并上载”
19. 在右侧的设置区域选择“表1”--> 右键单击 --> 在弹出的菜单中选择“加载到”
20. 在弹出的对话框中选择“现有工作表”及所需加载到的位置 --> 单击“加载”
绿色的表格就是结果。看似简单的三个表,没想到因为环环相扣,汇总出来竟然有这么多。
如果觉得太长不方便查看,还可以再转换成二维表。
21. 选中绿色表格的任意单元格 --> 选择菜单栏的“插入”-->“数据透视表”
22. 在弹出的对话框中选择“现有工作表”及所需放置的位置 --> 点击“确定”
23. 在右侧的“数据透视表字段”区域按以下方式拖动字段:
行:“品牌”、“风险”、“分类”
列:“期限”
值:“数量”
24. 选中数据透视表的任意单元格 --> 选择菜单栏的“设计”-->“报表布局”-->“以表格形式显示”
25. 选择“设计”-->“报表布局”-->“重复所有项目标签”
26. 选择“设计”-->“分类汇总”-->“不显示分类汇总”
尽管透视成了二维表,还是这么长。倍数的威力真是不可小觑。
转发、点赞、在看也是爱!