我有一个数据透视表,确切地说它是如何设置的,但是ID列非常广泛,所以我希望有一个宏可以轻松过滤我想要的数据透视表的ID。我想要做的是能够运行一个宏,它查看我在sheet2上的所有ID,并转到我在sheet1上的数据透视表,只显示这些ID。
我一直在寻找其他类似主题。但无论是那些问题和解决方案都不适用于我想要做的事情,或者他们在我的头脑中,我甚至没有意识到代码中发生了什么。我最初的想法是记录一个宏,我会选择一些ID来查看代码的样子,然后将宏上的ID更改为sheet2上我的ID所在的单元格;这对我不起作用,所以我不确定这是一个好主意和糟糕的执行,还是我现在离基地不远。但这是我到目前为止的代码:
Sub report_filter_macro()
'
' report_filter_macro Macro
' filter only the IDs desired
ActiveSheet.PivotTables("my_pivot").PivotFields("IDs").CurrentPage = _
"(All)"
With ActiveSheet.PivotTables("my_pivot").PivotFields("IDs")
.PivotItems("000022").Visible = False ' does not show ID 000022 in the pivot table
.PivotItems("000011").Visible = False ' does not show ID 000011 in the pivot table
End With
ActiveSheet.PivotTables("my_pivot").PivotFields("IDs"). _
EnableMultiplePageItems = True ' allows multiple filters
End Sub
感谢您对此提供任何帮助。