excel不刷新所有数据透视表

我正在尝试使用vba刷新数据透视表。
我有修改基础表查询的代码,并刷新查询。
一旦完成,它将刷新数据透视表,而这又会刷新汇总表。 出于某种原因,最终数据透视表没有被刷新。 它会正常刷新。

方法尝试:

1。

Dim PC As PivotCache For Each PC In ThisWorkbook.PivotCaches While DateDiff("s", PC.RefreshDate, Now) > 60 PC.Refresh Wend Next 

2。

 Sheets("Pivots").PivotTables("Pivot1").PivotCache.Refresh Sheets("Pivots").PivotTables("Pivot2").PivotCache.Refresh Sheets("Pivots").PivotTables("Pivot3").PivotCache.Refresh Sheets("Pivots").PivotTables("Pivot4").PivotCache.Refresh 

3。

 ThisWorkbook.RefreshAll 

我已经尝试在刷新数据透视表之前包括一个DoEvents在刷新表之后。
我也尝试将文件复制到另一个文件,并在那里重新创build它。 效果保持不变,它只是移动到它认为最后创build的数据透视表。 文件大小为279Kb xlsb,336 Kb xlsm。
这些表的数据来自SQL Server 2012,所有的表都在同一张Excel表上。 表格被更新,但是关键不是。

尝试类似

 Sub refreshTables() Dim pt As PivotTable Dim ws As Worksheet For Each ws In Worksheets For Each pt In ws.PivotTables pt.RefreshTable Next pt Next ws End Sub