Excel 为透视表创建切片器以选择多个值
我有一个来自excel的数据集,我为它创建了一个透视表,如下所示: 因此,我基于数据创建了一个透视表,以根据原始数据对每个名称的检查进行求和。我想在这里使用时间作为切片器-但正如您所看到的,如果我想选择最后12周的数据,我需要过滤到最后4周和5-12周。如果我想选择所有的时间范围,我需要检查切片器中的所有项目 只是想知道是否有一种方法可以让我创建一个切片器,并提供以下选项:Excel 为透视表创建切片器以选择多个值,excel,pivot-table,Excel,Pivot Table,我有一个来自excel的数据集,我为它创建了一个透视表,如下所示: 因此,我基于数据创建了一个透视表,以根据原始数据对每个名称的检查进行求和。我想在这里使用时间作为切片器-但正如您所看到的,如果我想选择最后12周的数据,我需要过滤到最后4周和5-12周。如果我想选择所有的时间范围,我需要检查切片器中的所有项目 只是想知道是否有一种方法可以让我创建一个切片器,并提供以下选项: 最后4周(如果我单击此按钮,我将使用时间=最后4周筛选我的数据 最后12周(如果单击此按钮,我将使用时间=最后4周和时
任何帮助都将不胜感激。非常感谢!!如果我正确理解任务,那么普通切片将实现此功能。选择几个筛选值:Ctrl+鼠标左键(或切片标题中带有复选标记的开关)。显示所有记录意味着删除过滤器-切片标题中带有红色十字的漏斗图标。屏幕截图显示了基于智能表格的示例:
另一种方法是创建自己的形状“切片器”,并为每个形状指定宏(以智能表格为例): 宏必须放置在图纸模块中
Sub w4()
ActiveSheet.ListObjects("Table1").Range.AutoFilter Field:=2, Criteria1:= _
"=Last 4 Weeks"
End Sub
Sub w5()
ActiveSheet.ListObjects("Table1").Range.AutoFilter Field:=2, Criteria1:= _
"=5-12 Weeks"
End Sub
Sub w12()
ActiveSheet.ListObjects("Table1").Range.AutoFilter Field:=2, Criteria1:= _
"=5-12 Weeks", Operator:=xlOr, Criteria2:="=Last 4 Weeks"
End Sub
Sub w13()
ActiveSheet.ListObjects("Table1").Range.AutoFilter Field:=2, Criteria1:= _
"=13-20 Weeks"
End Sub
Sub FReset()
ActiveSheet.ListObjects("Table1").Range.AutoFilter Field:=2
End Sub
感谢您的回答!是的,默认切片器已经可以完成这项工作。但是,此报告的一些潜在用户可能不理解这一点……他们不想同时选择最后4周和5-12周来选择“最后12周”数据,而是希望选择“最后12周”切片器中的选项供他们单击。一种解决方案是在构建透视表的范围内创建一个辅助Time2字段,使用类似[=IF(或(B2=“Last 4 Weeks”,B2=“5-12 Weeks”),“Last 12 Weeks”,“13-20 Weeks”)]的公式,返回“Last 4 Weeks”和“5-12 Weeks”对于时间字段中的值,结果为“过去12周”,并在时间2字段上创建第二个切片。在这种情况下,辅助字段可能不会显示在透视表中。