Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Pivot-Quelle per VBA ändern

Pivot-Quelle per VBA ändern
dave
Hallo zusammen,
ich möchte den Datenbereich einer Pivottabelle per VBA ändern.
Dazu habe ich zunächst mal den Recorder bemüht:
    ActiveSheet.PivotTables("PivotTable1").ChangePivotCache ActiveWorkbook. _
PivotCaches.Create(SourceType:=xlDatabase, SourceData:= _
"...Pfad...\[Datei.xlsm]Daten!Z1S1:Z12498S11" _
, Version:=xlPivotTableVersion12)
Wenn ich nun aber genau diese Zeile in meinen Code einfüge, erhalte ich "Laufzeitfehler 438, Objekt unterstützt diese Eigenschaft oder Methode nicht".
Hat jemand eine Idee, woran das liegt?
Danke und Gruß
David

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Pivot-Quelle per VBA ändern
19.05.2011 16:18:37
dave
Nachtrag:
Der Fehler ist "Laufzeitfehler 1004 - Die Pivottable-Eigenschaft des Worksheet-Objektes kann nicht zugeordnet werden"
Gruß
David
AW: Pivot-Quelle per VBA ändern
19.05.2011 17:33:39
Jana
Hallo David,
die Pivot-Tabellen haben sich manchmal etwas zickig...
Ich habe leider Code-technisch noch keine Lösung gefunden, definiere aber die Pivot-Tabelle über die gesamte Länge des Tabelle und der zuvor definierten breite. Per Code lasse ich die Tabelle lediglich aktualisieren. Sollten noch Diagramme auf die Pivot-Tabelle zugreifen, natürlich auch diese.
Damit kann das Tool auf seinen festen Datenbereich zugreifen, den es leider auch braucht.
Scheinbar erneuerst/änderst du die Grunddaten. Das kannst du ja dann problemlos mit VBA machen.
Mit dieser nicht ganz hübschen Lösung hinsichtlich der visuellen Ausgabe dennoch kein Problem; leere Zeilen ausbleden, kann in den Pivot-Funktionen ja alles eingestellt werden.
Viele Erfolg; Gruß Jana
Anzeige
AW: Pivot-Quelle per VBA ändern
20.05.2011 08:01:09
dave
Hallo Jana,
Das Problem ist (war), dass das vorhandene Datenblatt für die PT gelöscht wird, neu aufgebaut und dann diverse Zeilen/Spalten gelöscht werden, so dass sich der Datenbereich dann durch die "tolle" Excel-Automatik verkleinert und nicht mehr die gesamte Tabelle erfasst.
Ich habe jetzt aber einen anderen Weg genommen, indem ich einfach den Datenbereich per Namensdefinition festgelegt habe, die mit INDIREKT fixiert ist.
Trotzdem danke.
Gruß
David

55 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige