使用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有时间戳
而根据你的屏幕截图,情况就是这样。