更新时间:2022-11-24 14:01:14
尝试以下代码,并在代码注释中进行解释:
Try the code below, explanations inside the code's comments :
Option Explicit
Sub CopyPivotItemsDataRange()
Dim PvtTbl As PivotTable
Dim PvtFld As PivotField
Dim PvtRng As Range
' set the Pivot-Table object
Set PvtTbl = cevesa.Worksheets("r_hora").PivotTables("r_hora")
' set the Pivot-Table Field object
Set PvtFld = PvtTbl.PivotFields("PARAM")
With PvtFld
.ClearAllFilters
' use Union to merge multipe Pivot Items DataRange
Set PvtRng = Union(.PivotItems("DEM(MW)").DataRange, .PivotItems("DEM_AGREGADA(MW)").DataRange, _
.PivotItems("POT(MW)").DataRange, .PivotItems("POT_HID(MW)").DataRange)
End With
PvtRng.Copy
' I let you finish the Paste section
End Sub