AW: Pivot Tabelle Datenquelle variabel gestalten
21.09.2017 13:24:45
fcs
Hallo Nicole,
automatisch ändert sich natürlich nichts vieles in Excel.
Wenn dir Weg über Datenquelle ändern zu mühsehlig ist, dann kannst du es mit folgendem Makro versuchen.
'Erstellt unter Excel 2010
Sub prcChangePivotSource()
' prccChangePivotSource Makro
Dim wkb As Workbook
Dim wksPivot As Worksheet, pvTab As PivotTable
Dim wksSource As Worksheet, strSource As String
Dim rngSource As Range
Dim varVersion
Dim strRange As String
On Error GoTo Fehler
Set wkb = ActiveWorkbook
Set wksPivot = wkb.Worksheets("PivotTab") 'Blattname anpassen
Set pvTab = wksPivot.PivotTables(1)
varVersion = pvTab.PivotCache.Version
Set rngSource = Application.InputBox("Bitte Zelle in neuer Quelltabelle auswählen", _
"Ändern der Quelle für Pivotbericht", _
Type:=8)
Set wksSource = rngSource.Parent
'Zellbereich mit den Daten - Bereich muss ggf. anders ermittelt werden, _
wenn nicht alle benutzten Zellen im Pivotbericht ausgewertet werden sollen
With wksSource
strRange = wksSource.UsedRange.Address(True, True, xlR1C1)
End With
strSource = wkb.Path & "\[" & wkb.Name & "]" & wksSource.Name & "!" & strRange
pvTab.ChangePivotCache wkb.PivotCaches.Create( _
SourceType:=xlDatabase, _
SourceData:=strSource, _
Version:=varVersion)
Fehler:
With Err
Select Case .Number
Case 0 'alle OK
Case 424
'objekt-Fehler - Zellauswahl wurde abgebrochen
Case Else
MsgBox "Fehler-Nr.: " & .Number & vbLf & .Description
End Select
End With
End Sub
Hier noch eine kleine Beispiel-Datei mit dem Makro
https://www.herber.de/bbs/user/116426.xlsm
Gruß
Franz