我正在Excel中处理我的VBA代码。第一个数据透视表是由VBA生成的,运行良好。但是,我需要更多的数据透视表基于不同的行或列项的同一数据源。我尝试将第一个数据透视表复制到单元格L8,但是粘贴后,新数据透视表中的数据消失了。当我手动刷新数据透视表时,数据再次出现。这是我的代码-
wsPvtTbl.PivotTables("PivotTable1").TableRange2.Copy Destination:=wsPvtTbl.Range("L8")这是第二个数据透视表的屏幕截图

有什么方法可以修复吗?谢谢。
*更新*
我尝试使用附加到不同按钮的以下代码来刷新数据透视表,并且成功了。我以为它会在同一个sub中工作,但我不确定为什么它只能单独工作?
ThisWorkbook.refreshall发布于 2017-06-05 14:08:50
也许你可以试试这样的..。
Sub CopyPivotTable()
Dim wsPvtTbl As Worksheet
Dim pt As PivotTable
Dim pf As PivotField
Set wsPvtTbl = ActiveSheet
wsPvtTbl.PivotTables("PivotTable1").TableRange2.Copy Destination:=wsPvtTbl.Range("L8")
For Each pt In wsPvtTbl.PivotTables
If pt.Name <> "PivotTable1" Then
For Each pf In pt.PivotFields
pf.ClearAllFilters
Next pf
End If
Next pt
End Subhttps://stackoverflow.com/questions/44361753
复制相似问题