解答网友求助:如果将一个数据表按月透视出来,显示每个月的占比。如何对其中某个月的数据进行筛选?
案例:将下图 1 的数据表转换成下图 2 所示的数据透视表。然后从结果中筛选出所有 1 月占比大于等于 30% 的行,不开玩笑,能做到?
而且如果做出联动的数据透视图的话,一旦筛选了数据透视表,透视图要能够实时同步更新。
解决方案 :那就先试试数据透视表做不做得到。
1. 选中数据表的任意单元格 --> 选择菜单栏的“插入”-->“数据透视表”
2. 在弹出的对话框中选择“现有工作表”及所需放置的位置 --> 点击“确定”
3. 在“数据透视表字段”区域按以下方式拖动字段:
行:“部门”、“姓名”
列:“月份”
值:“交易笔数”
4. 选中数据透视表的任意单元格 --> 右键单击 --> 在弹出的对话框中选择“值显示方式”-->“父行汇总的百分比”
5. 选择“设计”-->“总计”-->“对行和列禁用”
6. 选择“设计”-->“报表布局”-->“以表格形式显示”
7. 选择“设计”-->“分类汇总”-->“不显示分类汇总”
8. 点击“月份”的筛选钮 --> 在弹出的菜单中选择“值筛选”-->“大于或等于”
9. 在弹出的菜单中选择“求和项:交易笔数”--> 选择“大于或等于”--> 输入 0.3 --> 点击“确定”
不出所料,没选出来。因为没有选项可以细化到月份。
虽然我们可以通过设置值字段下拉菜单实现 ,但是如果制作数据透视图的话,图表是无法跟着筛选区域联动的。
所以要另辟蹊径。
1. 选中数据表的任意单元格 --> 选择菜单栏的“数据”-->“从表格”
2. 在弹出的对话框中保留默认设置 --> 点击“确定”
表格已经上传至 Power Query。
3. 在“查询”区域中选中“表1”--> 右键单击 --> 在弹出的菜单中选择“复制”
4. 选中“查询”区域中的“表1 (2)”--> 选择菜单栏的“主页”-->“分组依据”
5. 在弹出的对话框中按以下方式设置 --> 点击“确定”:
在下拉菜单中选择“姓名”
操作:选择“求和”
柱:选择“交易笔数”
6. 选择“表1”--> 选择菜单栏的“主页”-->“合并查询”
7. 在弹出的对话框中按以下方式设置 --> 点击“确定”:
选中“姓名”列
在下拉菜单中选择“表1 (2)”--> 选中“姓名”列
8. 点开“表1 (2)”旁边的扩展钮 --> 在弹出的菜单中勾选“计数”--> 取消勾选“使用原始列名作为前缀”--> 点击“确定”:
9. 选择菜单栏的“添加列”-->“自定义列”
10. 在弹出的对话框的公式区域中输入[交易笔数]/[计数]--> 点击“确定”
11. 删除“交易笔数”和“计数”列。
12. 选中“月份”列 --> 选择菜单栏的“转换”-->“透视列”
13. 在弹出的对话框的下拉菜单中选择“自定义”--> 点击“确定”
到了这一步,如果在 Jan 列筛选出大于等于 0.3 的值,然后上载,就已经可以了。
不过我今天要教一个更加灵活应变的方法,可以随时选择任意范围的值。
14. 选择菜单栏的“主页”-->“关闭并上载”-->“关闭并上载至”
15. 在弹出的对话框中选择“仅创建连接”--> 点击“加载”
16. 在右侧的“工作簿查询”区域中选中“表1”--> 右键单击 --> 在弹出的菜单中选择“加载到”
17. 在弹出的对话框中选择“表”--> 点击“加载”
18. 将值区域的格式设置为百分比。
19. 选中表格的任意单元格 --> 选择菜单栏的“插入”-->“切片器”
20. 在弹出的对话框中仅勾选 Jan --> 点击“确定”
21. 选中切片器 --> 选择菜单栏的“切片器”--> 在“按钮”区域将列数设置为 2
现在就可以通过切片器来筛选一月的占比范围,按住 Ctrl 键可以多选。