数据透视表在报告筛选器中将“2”添加到数值。

3

我有一个带有数据透视表的文件,其中筛选器值基于上个月的日期每月更新一次。以下是此操作的VBA代码:

Dim SelectDate As String

SelectDate = Worksheets("Raw").Range("A3").Value
Worksheets("Main").PivotTables("PivotTable4").PivotFields("Date").CurrentPage = SelectDate

单元格A3的值是基于以下公式的字符串:
= A1 & " " & A2
例如:January 2017
更新数据透视表在过去几个月一直工作正常,但这个月我的数值不再正确更新,并且经过一些调查后,我发现我的数据透视表为月份创建了两个筛选项,分别为January 2017January 20172,而November 2016则消失了:

enter image description here

然而,当我检查底层数据时,每个月只有一个值:
June 2016
February 2016
March 2016
January 2016
November 2016
December 2016
August 2016
May 2016
October 2016
July 2016
September 2016
April 2016
January 2017
February 2017

请注意,当我使用相同的数据创建新的数据透视表时,筛选器仅显示“2017年1月”。
有什么建议可以解释现有数据透视表的筛选器为什么会同时显示“2017年1月”和“20172年1月”?
感谢您的帮助!

2
这真的很奇怪。要复现它将会很困难。 - A.S.H
我知道,这就是为什么我担心自己无法解决这个问题。但也许有人之前遇到过这个问题并且成功解决了。 - VBA Pete
确实很奇怪。也许有点牵强,但你尝试限定工作簿了吗?例如 ThisWorkbook.Sheets("Sheet1"),也许你打开了另一个具有相同工作表名称的工作簿? - Ryan Wildry
1
最终删除了数据透视表并用新的替换了它们,现在再次运行时就可以正常工作了。这真的很奇怪。 - VBA Pete
2
这种情况发生在我身上(没有使用VBA,只是普通的数据透视表生成),当我更改了整个值子集的名称时。我遵循了Inet Kemp的过程,重新分配/重新分配表格的源数据,这样就解决了问题。 - Jeffrey Knight
显示剩余5条评论
1个回答

3

这是对我有效的方法。根据我在其他地方阅读的内容,这可能是因为我添加了新的数据行或者进行了查找和替换。但是我改变了数据透视表中源数据的区域,比如说

'MASTER (3)'!$A$5:$EQ$600 to 'MASTER (3)'!$A$5:$EQ$6 

然后回到


'MASTER (3)'!$A$5:$EQ$600

这解决了问题。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接