通过VBA在Excel中展开数据透视表的特定部分和/或跳转到原始点

通过VBA在Excel中展开数据透视表的特定部分和/或跳转到原始点

问题描述:

我有一个按年,季和月分段的数据透视表。但是,如果我尝试 以扩大2015年的一个季度,则会显示所有其他年份的相应季度 。我怎样才能只扩展一个季度 一年?
- https://superuser.com/questions/1049881/expanding-specific-sections-of-a-pivot-table-in-excel通过VBA在Excel中展开数据透视表的特定部分和/或跳转到原始点

这个问题没有得到答案,但是这不是一个编程论坛。我有一个类似的问题。有没有VBA解决方案?

另外,是否有一个VBA代码“捕捉”扩展点击,然后跳转到原来的单元格上点击加号?

enter image description here

示例文件:http://ge.tt/2dNZ40n2

示例代码(我想这真的只是为了):

ActiveSheet.PivotTables(1).PivotFields("Month").PivotItems("3").ShowDetail = True 

您可以使用这样的事情?这将是一个很好的出发点,你就必须再创建一个IF每个月

Private Sub Worksheet_PivotTableUpdate(ByVal Target As PivotTable) 

    If (ActiveSheet.PivotTables(1).PivotFields("Month").PivotItems("3").ShowDetail) Then 
     ActiveSheet.PivotTables(1).PivotFields("Month").PivotItems("3").ShowDetail = False 
     Sheets(2).Activate 
     '''' Change filter options here? or have a cell selected? 
    End If 

End Sub 
+0

纠正我,如果我错了,但我觉得你的回答可以确保每隔一个月比3被关闭当你选择3.但那不是我问的。我问了如何只扩大3/2016而不是其他年份的3。 – LWC

+0

不,一点也不......我用电子表格测试了它,基本上当你点击2016年的3(你有一个红色正方形)时,它会再次关闭并激活第二张纸。在第二张纸被激活后,下一步可能会对该页应用滤镜(即仅显示2016年和第3个月) – Maldred