使用VBA更改数据透视表filter
我有一个数据透视表,其中包含“CoBdate”字段,如图所示。
我正在尝试创build一个macros,根据用户input自动更改date。
我写了下面的macros代码。 但是它显示了错误:
无法获取PivotTable类的PivotFields属性
谁能帮我这个?
注意:假定date格式不是问题
码:
Sub My_macro() Dim num as String num = InputBox(Prompt:="Date", Title:="ENTER DATE") Sheets("Sheet1").PivotTables("PivotTable1") _ .PivotFields("CoB Date").CurrentPage = num End Sub
正如评论完全相同的代码在我的结局。
Sub My_macro() Dim num As String num = InputBox(Prompt:="Date", Title:="ENTER DATE") Sheets("Sheet1").PivotTables("PivotTable1") _ .PivotFields("CoB Date").CurrentPage = num End Sub
假设你有这样的数据:
当你运行macros时,它会提示一个date:
然后按OK后,结果是:
请注意,我们假设inputdate不是问题。
所以我们使用了一个简单的数据,这将消除这个,所以你的代码工作。
你正在处理的可能的问题是如果date有时间戳 。
而根据你的屏幕截图,情况就是这样。