数据透视表的排序和筛选

本节介绍对数据透视表的指定字段进行排序和筛选。

数据透视表的排序

使用PivotField对象的AutoSort方法对指定字段进行排序。下面创建数据透视表,对字段“求和项:金额”进行降序排列。

Document Image

图8-10 对字段“求和项:金额”按降序排列

编写Python脚本。

code.python
#前面代码省略,请参见Python文件
#......
#排序
pvt.PivotFields('产地').AutoSort(\
      Order=xw.constants.SortOrder.xlDescending, \
      Field='求和项:金额')

运行脚本,生成数据透视表如图8-10所示。

数据透视表的筛选

指定字段取单个值或者多个值,可以实现数据透视表的单选和多选。

Document Image

图8-11 用“类别”字段的“蔬菜”值筛选数据透视表

编写Python脚本。

code.python
#前面代码省略,请参见Python文件
#......

使用两种方法进行筛选。

code.python
#筛选-单选
pf = pvt.PivotFields("类别")
pf.ClearAllFilters
pf.CurrentPage = "蔬菜"

或者

code.python
#筛选-多选
pf2 = pvt.PivotFields(“产地”)
pf2.ClearAllFilters
pf2.PivotItems(“澳大利亚”).Visible = False
pf2.PivotItems(“加拿大”).Visible = False
pf2.PivotItems(“英国”).Visible = False

选择单选或多选,运行脚本,生成数据透视表如图8-11和图8-12所示。

Document Image

图8-12 隐藏“产地”字段的多个透视项