Frage

Ich habe mehr Pivot-Tabellen mit jeweils eigenen Pivot-Tabelle auf separate Arbeitsblatt in Excel 2002.

Wenn ich versuche, diese Diagramme mit VBA mit dem folgenden Code zu generieren:

Set cht = Charts.Add(After:=Worksheets("Setup"))
With cht
    ' we use named ranges here
    .SetSourceData Source:=range(tblName)
    .Name = chtName

....

wo tblname ist ein benannter Bereich nur ein paar Zeilen vor erstellt, der Code gut läuft, wenn es nur eine Tabelle und Grafik erzeugen, sondern gibt mir einen Laufzeitfehler 1004: „Die Quelldaten eines PivotChart- Bericht kann nicht geändert werden. ..“, wenn ich versuche, Pivot-Tabelle und Diagramm zu erzeugen, setzen nacheinander.

Gehen Sie auf Einfügen -> Name -.> Definieren, die Liste der benannten Bereiche geschaffen scheint korrekt zu sein

Was ist der richtige Weg, um die Quelldaten für eine Pivot-Chart mit einem Dynamikbereich von Einstellung?

War es hilfreich?

Lösung 2

Dieses Stück Code wird davon ausgegangen, dass Sie pro Blatt nur eine Pivot-Tabelle haben und die Pivot-Tabelle beginnt auf Zelle A1:

Sheets(wsName).Select
Range("A1").Select
Set cht = Charts.Add(after:=Worksheets(Worksheets.Count))
With cht
    .SetSourceData Sheets(wsName).Range("A1")
    .Name = chtName

...

Auch „Worksheets.Count“ zu einem bestimmten Arbeitsblatt Namen zu ändern scheint auch, dass Fehler ausgelöst wird.

Andere Tipps

Ich glaube, Sie könnten versuchen, auf einmal zu viele Dinge zu tun.

Wenn die Datenquelle ändern wird, würde ich nicht ein Pivot-Diagramm verwenden.

eine Pivot-Tabelle verwenden, erstellen Sie das Diagramm zur Laufzeit (wie Ihr Beispiel). Bauen Sie Ihr Diagramm der Ergebnisse der Pivot-Tabelle.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top