----=即刻火速 下载Office 2010 感受非凡体验!=----
Microsoft
 
最近,很多朋友都在问我这样的问题:
Excel 2010中的新特性“切片器”与以往版本中的“页字段”有何区别
从功能上来看,两者都可以实现对透视表中的数据进行筛选。但是,切片器可以轻松链接多个透视表并同步集中控制、实现动态可视化交互式演示
另外,下面这张表中所列举的一些细节也能提现“切片器”的与众不同。

 

条目
切片器
页字段
版本支持Excel 2010新特性Excel 2010,2007,2003
位置浮动窗口内置于单元格
是否支持多选?支持多选Excel 2010,2007支持多选
Excel 2003仅支持单项选择
如何实现链接多透视表并同步控制?右键切片器--链接即可需借助窗体组合框,与函数结合
另外还需要录制宏(VBA)来实现
 
 
如何实现同布控制多个数据透视表,进行筛选分析?
Excel 2010 我们这样用切片器……
 
1、创建多个透视表-基于同一数据源在同一工作表中创建多个透视表,如分别创建按照产品名称、销售员姓名及日期汇总的销售额(附件:下载实例文档)。
  • 注:目前,切片器暂不能直接链接某透视图,但可以基于透视表先创建好一个图表,而该图表可随原透视表一起联动。
2、创建切片器-插入“切片器”,选择用于筛选的字段名称,如城市。
  • 在哪里可以找到切片器?——以下两种方式均可
  • 方式一:插入--切片器
  • p_w_picpath
  • 方式二:透视表工具--选项--插入切片器
  • p_w_picpath
3、链接透视表-右键点击切片器,并选择“链接透视表”,勾选需要链接的透视表名称。
 
4、灵活筛选数据-按住CTRL键的同时,可选取多个城市名称。此时,凡已链接到该切片器的透视表会同步自动更新数据。
 
slicer1
  • Excel 2007/2003 虽然没有切片器,
  • 可我们能用组合框这样……
 
如果想在以往版本Excel中,实现切片器所达到的同样效果,可以考虑采用以下“曲线救国”的替换办法。
核心思路
  • 用窗体的组合框代替Excel 2010中的切片器,作为筛选用途的下拉框。
  • 每当选择不同数据项的动作发生时,触发一个宏,用来改变多个透视表的页字段,从而实现多表同步联动。
具体操作步骤如下(以Excel 2003为例):
 
1、创建多个透视表-基于同一数据源在同一工作表中创建多个透视表,如分别创建按照产品名称、销售员姓名及日期汇总的销售额(附件:下载实例文档)。
 
2、创建组合框
从“视图”选择“工具栏”,勾选“窗体”并从中选择“组合框”绘制到某单元格,如A1。
 
p_w_picpath
 
右键点击组合框,选择“设置控件格式”并指定“数据源区域”及“单元格链接”。
  • p_w_picpath
 
 
  • p_w_picpath
 
(a) 数据源区域:此前,将所有城市名称所在的区域定义为“city”,这样做的好处在于可以实现跨表引用数据区域。
 
定义名称的具体操作方法为:
  • 可另建一数据表用于存放源数据区域,即城市名称列表
  • 选中该列表,并在公式工具栏的名称框中,输入区域名称,如city
p_w_picpath
 
(b) 单元格链接:可指定到任意空白单元格,如D1,用于显示组合框当前选中数据项在原始数据源区域中的排列顺序。
3、INDEX函数:在E1单元格中输入函数 “=INDEX(city,$D$1)”用于返回当前组合框所选城市的名称。
 
4、录制宏:将更改个数据透视表页字段的操作录制在一个宏中。具体操作为:工具--宏--录制新宏--随便给宏取个名称,如此例中的“byCity”
 
5、编辑宏:参照以下代码进行修改,关键点= Range("E1").Text
 
6、为组合框指定宏:右键点击组合框,选择“指定宏”,与byCity绑定。
 
 
Sub byCity()
'
' byCity Macro
' 宏由 AdamLiu 录制,时间: 2009-12-28
'
'    ActiveWindow.Visible = False
   
Windows("Excel2010 切片器-销售统计2(Excel 2007.2003组合框实现同步控制多透视表).xls").Activate
ActiveSheet.PivotTables("数据透视表1").PivotFields("城市").CurrentPage = Range("E1").Text
ActiveSheet.PivotTables("数据透视表2").PivotFields("城市").CurrentPage = Range("E1").Text
ActiveSheet.PivotTables("数据透视表3").PivotFields("城市").CurrentPage = Range("E1").Text

End Sub
 
 
下面的动画演示了上述连续的操作步骤:
macro
 
 
最后,再次对“切片器”的优势做个小结:
 
1、Excel 2010 切片器 浮动于单元格之上,可用于对透视表中的数据进行筛选;
2、Excel 2010 切片器 高亮度显示当前用于筛选透视表的字段名称;
3、Excel 2010 切片器 支持多字段筛选 ;
4、Excel 2010 切片器 还可以链接多个透视表,用于同布集中控制、进行交互式演示。