Excel 如何在透视表筛选器中选择(全部)
我需要在透视表中选择Excel 如何在透视表筛选器中选择(全部),excel,vba,Excel,Vba,我需要在透视表中选择(全部) 我尝试了以下方法 Dim pf As PivotField Set pf = Worksheets("xxx").PivotTables("PivotTable1").PivotFields("myFilterField") For Each Pi In pf.PivotItems Pi.Visible = True Next Pi 这工作非常缓慢,而且不太好 另一种选择根本不起作用。它仅选择以前选择的一些项目 Work
(全部)
我尝试了以下方法
Dim pf As PivotField
Set pf = Worksheets("xxx").PivotTables("PivotTable1").PivotFields("myFilterField")
For Each Pi In pf.PivotItems
Pi.Visible = True
Next Pi
这工作非常缓慢,而且不太好
另一种选择根本不起作用。它仅选择以前选择的一些项目
Worksheets("xxx").PivotTables("PivotTable1").PivotFields("myFilterField").CurrentPage = "(All)"
您可能会出于几个原因调用.Visible=True,因此希望下面的其中一个说明您正在尝试执行的操作: 如果您的意思是要将所有Pi设置为在一个步骤中可见,则不要在pf.PivotItems中枚举Pi,只需:
pf.ShowAllItems=True
另一方面,如果您的意思是要清除所有过滤器,则:
pf.ClearAllFilters()
或者,如果您只想清除手动过滤器(即不是针对实际行/列字段应用的过滤器,而是针对过滤器字段应用的过滤器),则:
pf.ClearManualFilters
有关您可能要调用的完整列表,请参阅“数据透视字段对象成员的帮助”。Visible=True有几个原因,因此希望下面的一项内容涵盖您正在尝试执行的操作: 如果您的意思是要将所有Pi设置为在一个步骤中可见,则不要在pf.PivotItems中枚举Pi,只需:
pf.ShowAllItems=True
另一方面,如果您的意思是要清除所有过滤器,则:
pf.ClearAllFilters()
或者,如果您只想清除手动过滤器(即不是针对实际行/列字段应用的过滤器,而是针对过滤器字段应用的过滤器),则:
pf.ClearManualFilters
有关您可能要调用的完整列表,请参阅“数据透视字段对象成员的帮助”。Visible=True有几个原因,因此希望下面的一项内容涵盖您正在尝试执行的操作: 如果您的意思是要将所有Pi设置为在一个步骤中可见,则不要在pf.PivotItems中枚举Pi,只需:
pf.ShowAllItems=True
另一方面,如果您的意思是要清除所有过滤器,则:
pf.ClearAllFilters()
或者,如果您只想清除手动过滤器(即不是针对实际行/列字段应用的过滤器,而是针对过滤器字段应用的过滤器),则:
pf.ClearManualFilters
有关您可能要调用的完整列表,请参阅“数据透视字段对象成员的帮助”。Visible=True有几个原因,因此希望下面的一项内容涵盖您正在尝试执行的操作: 如果您的意思是要将所有Pi设置为在一个步骤中可见,则不要在pf.PivotItems中枚举Pi,只需:
pf.ShowAllItems=True
另一方面,如果您的意思是要清除所有过滤器,则:
pf.ClearAllFilters()
或者,如果您只想清除手动过滤器(即不是针对实际行/列字段应用的过滤器,而是针对过滤器字段应用的过滤器),则:
pf.ClearManualFilters
有关完整列表,请参阅“数据透视字段对象成员的帮助”尝试以下代码:
Worksheets("xxx").PivotTables("PivotTable1").PivotFields("myFilterField").ClearAllFilters
请尝试以下代码:
Worksheets("xxx").PivotTables("PivotTable1").PivotFields("myFilterField").ClearAllFilters
请尝试以下代码:
Worksheets("xxx").PivotTables("PivotTable1").PivotFields("myFilterField").ClearAllFilters
请尝试以下代码:
Worksheets("xxx").PivotTables("PivotTable1").PivotFields("myFilterField").ClearAllFilters
非常感谢。然而,对我来说,它并没有起到一些作用reason@Buras谢谢-我现在意识到你可能会提到一些东西,这取决于你想让它们可见的原因。请参阅我编辑过的答案,特别是pf.ClearManualFilters(我想您指的“(全部)”是关于过滤器的下拉列表)。如果这还不行,那就告诉我!非常感谢。然而,对我来说,它并没有起到一些作用reason@Buras谢谢-我现在意识到你可能会提到一些东西,这取决于你想让它们可见的原因。请参阅我编辑过的答案,特别是pf.ClearManualFilters(我想您指的“(全部)”是关于过滤器的下拉列表)。如果这还不行,那就告诉我!非常感谢。然而,对我来说,它并没有起到一些作用reason@Buras谢谢-我现在意识到你可能会提到一些东西,这取决于你想让它们可见的原因。请参阅我编辑过的答案,特别是pf.ClearManualFilters(我想您指的“(全部)”是关于过滤器的下拉列表)。如果这还不行,那就告诉我!非常感谢。然而,对我来说,它并没有起到一些作用reason@Buras谢谢-我现在意识到你可能会提到一些东西,这取决于你想让它们可见的原因。请参阅我编辑过的答案,特别是pf.ClearManualFilters(我想您指的“(全部)”是关于过滤器的下拉列表)。如果这还不行,那就告诉我!