Pivot Table系列之切片器 (Slicer)
1. 遇到的问题:
在Excel中,用PivotTable来做数据报告展示:
问题1:在同一个Sheet页里,多个PivotTable如何实现同步刷新?
问题2:在不同Sheet页之间,多个PivotTable如何实现同步刷新?
2. 前提介绍
在同一个Sheet页里面,有两个PivotTable,数据源在同一个模型中,维度相同,由于种种原因(不同的度量值等等,在这里不再深究为什么分开,只谈分开之后如何处理),需要分开两个PivotTable显示。

3. 数据解释
如上图所示,例如第一个PivotTable的数据是每个月的实际发生数据,每个月会保存一版月度最终版本数据;第二个PivotTable是全年的预测数据。
4. 需求
需要查看不同版本的实际月份时,在同一年全年预测数据不变的;同时切换到不同年份的数据版本时,第二个PivotTable的年度预测数据需要随之显示成当前年的预测数据。
5. 问题现象
如上图所示,当使用过滤器(Filter)进行数据版本切换时,第二个PivotTable是没有随之发生联动的;也就是说第一个PivotTable的过滤器的作用域只是自己的PivotTable。
6. 解决办法
使用切片器(Slicer)进行同步刷新多个PivotTable
1) 切片器位置
ANALYZE 选项卡中,Filter组中。

2) 点击【Insert Slicer】来插入一个切片器
3) 在弹出的窗口中,会显示当前数据集使用的维度和事实;也可以点击[全部]来切换到全部的维度和事实。
在这里,我们选择使用DIM_MONTH_VERSION来作为切片器的筛选条件。


4) 点击OK,切片器创建成功
注:
黑色维度:表示在事实表中存在此维度数据,如201512、201608、201612;
同理,灰色维度:表示在事实表中不存在此维度数据,如201501等等。

5) 创建成功之后,依然发现两个PivotTable没有同步数据。
第二个PivotTable的MONTH_KEY筛选器还是All.

6) 此时,我们需要对切片器的作用域进行设置。因为在创建切片器时,选中了其中的一个PivotTable,所以默认的作用域就是当前PivotTable。
在切片器上,点击鼠标右键,选择【Report Connections…】

7) 会发现在当前Sheet2页中,只有PivotTable1 (第一个PivotTable)被选中了。为了把PivotTable2加入到切片器的作用域中,把PivotTable2也选中;然后OK。


8) 然后,我们看到第二个PivotTable的MONTH_KEY的Filter值也变成了201512。

这里并不是手动在第二个PivotTable选择MONTH_KEY的结果;为了澄清结果,把两个PivotTable的MONTH_KEY的Filter去掉

点击切片器,切换到201608数据版本。

9) 同理,可以设置多个PivotTable数据同步,即使不在一个Sheet页里面,也是可以设置生效的,因为在切片器的Report Connections属性卡里面列出来当前Excel文件所有的PivotTable.

7. 切片器其他属性介绍
在切片器的右键属性中

1) 刷新(Refresh)

刷新切片器和切片器作用域内所有PivotTable。
刷新切片器的意思是:如果在事实表中插入了201501版本的数据,那么点击刷新之后,会在切片器中把201501显示成黑色,来表示事实表中事实数据存在;即使只有一个事实表中存在,也会表示出来。
2) 排序功能

从小到大,从大到小,按照数据源顺序。比较简单,可以点击看不同结果。
3) 清空筛选条件…(Clear Filter from…)

会选中所有切片器中维度的所有数据。然后变灰,如果想再次选择数据版本,只需点击切片器数据版本即可。

4) 报表连接…(Report Connections…)

如上示例所示,对当前Excel文件的所有PivotTable的设置切片器的作用域。
5) 移除…(Remove…)

即删除当前切片器
6) 组合(Group)
如果有多个切片器,可以对某几个或者全部切片器,进行组合,以方便显示和拖拽。

7) 前置显示/后置显示(Bring to Front/Send to Back/)
设置切片器显示的层次。
8) 指定宏…(Assign Macro..)

关联VBA脚本,来设置点击切片器或者切片器发生变化时,需要触发的事件;处理的逻辑需要在VBA中开发完成。
9) 尺寸和属性(Size and Property…)

根据需要设置布局位置的外观。
10) 切片器设置(Slicer Setting)


- 名称(Name): 给切片器命名。在文件中存在多个切片器时,可以以名字来区分。
- 显示头部(Display header):是否显示切片器表头。
不显示

显示

- 标题(Caption)
表头位置显示的标题内容。方便用户理解。
例如:以上示例中,可以命名成Month Version


- 排序(Item Sorting)
同排序功能
- 显示筛选(Item Filtering)
是否需要隐藏没有数据的维度
例如:
- 如果选择隐藏没有数据的维度

灰色维度数据即不显示

- 如果选择显示没有数据的维度
直观显示没有数据的维度(Visually indicate items with no data)和在最后显示没有数据的维度(Show item with no data last)是默认选择的。
实际显示效果,可以尝试取消选择进行测试。

8. 使用注意
1) 切片器就是一个特殊的筛选器,能扩大筛选器的作用域
2) 如果把切片器和筛选器同时设定,它们之间的是一致的。
Pivot Table系列之切片器 (Slicer)的更多相关文章
- Pivot Table系列之展开/折叠用法 (Expand/Collapse)
1.遇到的问题: PivotTable中本来已经展开的维度的Hierarchy(层次结构),在切换切片器的数据集时,层次结构就折叠在一起了:没有按照之前的方式展开显示. 2.在做成PivotTable ...
- 2018.03.29 python-pandas 数据透视pivot table / 交叉表crosstab
#透视表 pivot table #pd.pivot_table(data,values=None,index=None,columns=None, import numpy as np import ...
- (三、四)Superset 1.3图表篇——透视表-Pivot Table
本系列文章基于Superset 1.3.0版本.1.3.0版本目前支持分布,趋势,地理等等类型共59张图表.本次1.3版本的更新图表有了一些新的变化,而之前也一直没有做过非常细致的图表教程. 而且目前 ...
- Open xml 操作Excel 透视表(Pivot table)-- 实现Excel多语言报表
我的一个ERP项目中,客户希望使用Excel Pivot table 做分析报表. ERP 从数据库中读出数据,导出到Excel中的数据源表(统一命名为Data),刷新Pivot table! 客户还 ...
- Use Excel Pivot Table as a BI tool
Normally, we have created a table, view in database or cube in SSAS, user can use Excel as a BI tool ...
- Dynamic Pivot table wizard SQL Server
原文 http://www.gyurcit.hu/pivot.html Dynamic Pivot table wizard This stored procedure generate dynami ...
- EXCEL Pivot table manipulate
Add filter For the Demo time,I would like to filter out the products which not in Red and Black colo ...
- 关于ComponentOne For WinForm 的全新控件 – DataFilter数据切片器(Beta)
概述 数据切片器在电子商务网站上很常见 - 它们可以帮助用户快速过滤所选商品,并且所有过滤选项都可以在一个地方使用,通常包含核心控件类型为:清单,范围栏和单选按钮等.在ComponentOne For ...
- Pandas 基础(10) - 用 Pivot table 做格式转换
Pivot allows you to transform or reshape data.Pivot 可以帮助我们改变数据的格式, 下面两个例子可以作为参考: 下面来看下具体实现, 首先引入一个 c ...
随机推荐
- cas单点登录系统:客户端(client)详细配置
最近一直在研究cas登录中心这一块的应用,分享一下记录的一些笔记和心得.后面会把cas-server端的配置和重构,另外还有这几天再搞nginx+cas的https反向代理配置,以及cas的证书相关的 ...
- OpenSSL "heartbleed" 安全漏洞
在 heartbleed 的官网上有关于 CVE-2014-0160 漏洞的详细信息,这是关于 OpenSSL 的信息泄漏漏洞导致的安全问题.改 Heartbleed bug 可以让互联网的任何人读取 ...
- python str转dict
两种方法 捷径 eval(str) >>> user = "{'name' : 'jim', 'sex' : 'male', 'age': 18}" >&g ...
- docker在windows,centos中的安装
centos安装方式,采用阿里云的镜像和安装脚本 或者到https://store.docker.com/search?type=edition&offering=community下载相应系 ...
- MongoDB--架构搭建(主从、副本集)之主从
此章节讲述主从架构 主从架构 -- 目前已经不建议使用,推荐使用复制集 主从配置可以在配置文件中配置 从节点可以在启动之后使用命令追加主节点,db.source.insert({"host ...
- oracle删除数据后表空间仍过大问题解决方法
-----亲测有效------- --一.备份原始数据库库--1.备份空表--在plsql里面执行一下这句话 然后把结果集 再执行一把 再导数据select 'alter table '||table ...
- Ecshop去掉模版中随机出现Ecshop版权的方法
EC如果是免费用户用的话,模版里面会随机出现 powered by ecshop 的字样,看了一下原来是在COMMON.JS里面写的一段代码,删除掉就可以解决掉了,方法如下: 打开 js/commo ...
- Quirks模式是什么?它和Standards模式有什么区别
从IE6开始,引入了Standards模式,标准模式中,浏览器尝试给符合标准的文档在规范上的正确处理达到在指定浏览器中的程度. 在IE6之前CSS还不够成熟,所以IE5等之前的浏览器对CSS的支持很差 ...
- Kafka官方文档翻译——设计
下面是博主的公众号,后续会发布和讨论一系列分布式消息队列相关的内容,欢迎关注. ------------------------------------------------------------ ...
- TCP札记
协议对于通信就像算法对于计算一样.算法允许人们在不必知道特定的CPU指令集的情况下指定或理解具体的计算形式.同样地,通信协议允许人们不依赖特定厂家的网络硬件来指定或理解数据通信. 网络协议通常分不同层 ...