Ich versuche in einer Exceltabelle mit mehreren Konsolidierungsbereichen neue Quellen einzufügen, sowie auch bestehende zu entfernen, leider bis jetzt ohne Erfolg :-(
Die Pivottabelle ist bereits mit dem Pivotassistenten erstellt, mehrere Konsolidierungsbereiche mit 1 Seitenfeld für die Eingabe eines Bereichsnamens für weitere Filteraufgaben.
Bisher habe ich mit Hilfe von folgendem Code angefangen:
option explicit
'-----------------Variablen
Dim PIT as Pivottable
Dim BEREICHA as STRING, BEREICHB as STRING, BEREICHC as STRING
'----------Pivottabelle befüllen
Private Function TEST()
'-----------------Variablen füllen
BEREICHA = "=Tabelle1!R1C1:R2C2"
BEREICHB = "=TABELLE2!R1C1:R2C2"
BEREICHC = "=TABELLE3!R1C1:R2C2"
'-----------------Bereichsnamen im Namensmanager eingetragen
with ThisWorkBook
.Names.Add Name:="Test1", RefersToR1C1:=BEREICHA
.Names.Add Name:="Test2", RefersToR1C1:=BEREICHB
.Names.Add Name:="Test3", RefersToR1C1:=BEREICHC
'-----------------Bereich in Pivottabelle aufnehmen/ Bereich ändern
.Tabelle1.activate
for each PIT in ActiveSheet.Pivottables 'nur eine Pivottabelle vorhanden
PIT.PivotTableWizard SourceType:=xlConsolidation, _
SourceData:=Array (Array("Test1", "BEREICHA"))
next PIT
end with
End Function
Das Ergebnis bis jetzt: _https://www.herber.de/bbs/user/108677.jpg
Soweit so gut... Jetzt möchte ich im Nachgang zusätzliche Bereiche in das Array der
Pivottabelle aufnehmen (BEREICHB,BEREICHC) bzw, aus dem bestehenden Array einzelne Arrays wieder löschen (BEREICHA). Wie muß ich über Variablen das bestehende Array auslesen und ändern? Das habe ich versucht, aber mit Arrays kenne ich mich nicht aus...
'Dim PIC
'DIM PICB
'DIM PICC
'DIM PICA
'DIM I
'PIC=PIT.PivotCache.SourceData 'Hauptarray mit seinen Unterarrays
'I = UBound(PIC) 'Anzahl Unterarrays im Hauptarray
'PICB = Array("TEST2", "BEREICHB")) 'neu einzufügendes Array
'PICC = Array("TEST3", "BEREICHC")) 'neu einzufügendes Array
'PICA = Array("TEST1", "BEREICHA")) 'zu löschendes Array
'PIT.PivotCaches.Add(SourceType, [SourceData]) läuft nicht...
'PIT.ChangePivotCache ThisWorkbook.PivotCaches. _
Create(SourceType:=xlconsolidate, SourceData:=PIC & PICB ) läuft auch nicht...
Weiter weiß ich nicht :-(
Wer kann mir hierbei helfen? Ich freue mich über jede Rückantwort. Vielen Dank im voraus