我遇到了一个最奇怪的问题。我有一个按日期分组的数据透视表。当基础表被更新(通过连接)并且数据透视表刷新时,有时分组会中断。我已经确认所有数据的日期格式正确,所以这不是问题。
这是真的很奇怪的部分。如果我尝试重新组合,则会收到一个错误,表明我无法对该选择进行重新组合。然后,我进行手动刷新。我尝试再次分组,成功!
好-我可以在VBA中模仿这个过程,对吧?
我编写了以下代码:
' Get Data Objects
Set pt = Worksheets("Service Anniv").PivotTables("Pivot_Anniversaries")
Set pf = pt.PivotFields("Service Awd Dt")
' Refresh the table
pt.RefreshTable
' Force the regrouping since sometimes it dissapears
pf.LabelRange.Cells(2, 1).Group _
Start:=True, End:=True, Periods:=Array(False, False, False, _
False, True, False, False)
VBA进入Group方法-错误“无法分组”。越来越奇怪。我停止使用“调试”执行。将执行箭头移到RefreshTable行,然后重新开始执行。该表又刷新了一次,组现在可以工作了。同样,如果执行停止调试后,我在Excel中手动刷新了表,然后重新执行,则Group起作用。
我尝试放置两个RefreshTables甚至重新刷新PivotCache以尝试模拟强制第二次刷新,但这没有帮助。我尝试在刷新后添加1秒的等待时间,但没有帮助。就像执行必须完全停止才能再次刷新一样。
关于如何解决此问题的任何想法?我在使用Excel 2013