Private
Sub
btnUpdate_Click()
Dim
pvtTmp
As
PivotTable
Dim
pvtF
As
PivotField
Dim
rng
As
Range
Dim
dataFieldNames()
As
String
Dim
dataFieldCaptions()
As
String
Set
pvtTmp = wsPivotDiagram.PivotTables(
"Pivot_>60_Diagram_3"
)
Dim
i
As
Integer
i = 0
For
Each
pvtF
In
pvtTmp.DataFields
If
InStr(pvtF.SourceName,
"EUR"
) > 0
Then
ReDim
Preserve
dataFieldNames(i)
ReDim
Preserve
dataFieldCaptions(i)
dataFieldNames(i) = pvtF.SourceName
dataFieldCaptions(i) = pvtF.Caption
i = i + 1
End
If
Next
pvtF
Set
rng = wsDataUSD.Range(
"$A$1:$AE$58496"
)
With
pvtTmp
.SourceData = rng.Address(
True
,
True
, xlR1C1,
True
)
End
With
For
i = LBound(dataFieldNames)
To
UBound(dataFieldNames)
pvtTmp.AddDataField pvtTmp.PivotFields(Replace(dataFieldNames(i),
"EUR"
,
"USD"
)), Replace(dataFieldCaptions(i),
"EUR"
,
"USD"
), xlSum
Next
i
End
Sub