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

Wenn Pivot Slicer benutzt, dann VBA

Forumthread: Wenn Pivot Slicer benutzt, dann VBA

Wenn Pivot Slicer benutzt, dann VBA
21.03.2017 16:35:22
Peter
Hallo zusammen
Ich suche ein Script, bei dem das unten stehende Script ausgeführt wird, wenn der Slicer benutzt wurde. Das Problem ist, wenn der Slicer, Filter benutzt wurde, wird die Legende des Diagramms ebenfalls geändert (entsprechend dem Slicer, Filter), jedoch wenn die Slicer zurück gesetzt werden, wird die Legende nicht wieder angepasst. Mit dem unten stehenden Script, wird die Legende auf die richtige Grösse angepasst. Jetzt brauche ich noch den Scriptauslöser und das sollte eine Slicer-Aenderung sein. Die Funktion "Private Sub Worksheet_Change(ByVal Target As Excel.Range)" funktioniert leider nicht (es wurde ja keine Daten verändert).
Hat jemand eine Idee?
Script setzt die Legende wieder auf die richtige Grösse:
ActiveSheet.ChartObjects("Diagramm 11").Activate
ActiveChart.Legend.Select
Selection.Width = 1285.252
Selection.Height = 120.02
Range("G1").Select
Danke
Viele Grüsse,
Peter
Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Wenn Pivot Slicer benutzt, dann VBA
21.03.2017 19:32:33
fcs
Hallo Peter,
es sollte mit dem Pivottable-Update-Ereinismakro funktionieren
Private Sub Worksheet_PivotTableUpdate(ByVal Target As PivotTable)
ActiveSheet.ChartObjects("Diagramm 11").Activate
ActiveChart.Legend.Select
Selection.Width = 1285.252
Selection.Height = 120.02
Range("G1").Select
End Sub

Wenn das Diagramm nicht auf demgleichen Tabellenblatt angeordnet ist wir die Pivottabellen, dann musst du im Makro als erstes das Tabellenblatt mit dem Diagramm aktivieren.
LG
Franz
Anzeige
AW: Wenn Pivot Slicer benutzt, dann VBA
23.03.2017 14:32:37
Peter
Hallo Franz
Scheint so weit sehr gut zu funktionieren, vielen Dank für Deine Hilfe!
Viele Grüsse,
Peter
;
Anzeige

Infobox / Tutorial

Automatisierung von Excel-Diagrammen mit Slicern und VBA


Schritt-für-Schritt-Anleitung

Um die Legende eines Diagramms in Excel automatisch anzupassen, wenn ein Slicer verwendet wird, kannst du das folgende VBA-Skript nutzen. Es greift auf das Ereignis Worksheet_PivotTableUpdate zurück, welches ausgeführt wird, wenn der Slicer verändert wird:

  1. Öffne dein Excel-Dokument und drücke ALT + F11, um den VBA-Editor zu öffnen.

  2. Suche das entsprechende Arbeitsblatt, in dem sich deine Pivot-Tabelle und das Diagramm befinden.

  3. Füge den folgenden Code in das Arbeitsblattmodul ein:

    Private Sub Worksheet_PivotTableUpdate(ByVal Target As PivotTable)
       ActiveSheet.ChartObjects("Diagramm 11").Activate
       ActiveChart.Legend.Select
       Selection.Width = 1285.252
       Selection.Height = 120.02
       Range("G1").Select
    End Sub
  4. Speichere deine Änderungen und schließe den VBA-Editor.

  5. Teste den Slicer, um sicherzustellen, dass das Diagramm korrekt aktualisiert wird.


Häufige Fehler und Lösungen

  • Fehler: Das Diagramm wird nicht aktualisiert, wenn der Slicer verwendet wird.

    • Lösung: Stelle sicher, dass das Diagramm und die Pivot-Tabelle sich im gleichen Arbeitsblatt befinden oder passe den Code an, um das entsprechende Arbeitsblatt zu aktivieren, bevor das Diagramm ausgewählt wird.
  • Fehler: Der Slicer in Excel funktioniert nicht wie gewünscht.

    • Lösung: Überprüfe die Datenquelle des Slicers und stelle sicher, dass die Pivot-Tabelle richtig konfiguriert ist.

Alternative Methoden

Neben der Verwendung von VBA kannst du auch die integrierten Funktionen von Excel verwenden. Wenn du ein Slicer in Excel Shortcut verwenden möchtest, kannst du einfach die Slicer-Optionen im Menüband nutzen, um deine Daten schnell zu filtern, ohne VBA zu verwenden.


Praktische Beispiele

Hier ist ein Beispiel, wie du ein Excel Chart Slicer erstellen und es mit einer Pivot-Tabelle verknüpfen kannst:

  1. Erstelle eine Pivot-Tabelle aus deinen Daten.
  2. Gehe zu PivotTable-Analyse und klicke auf Slicer einfügen.
  3. Wähle die Felder aus, die du für den Slicer verwenden möchtest.
  4. Füge den oben genannten VBA-Code hinzu, um die Legende des Diagramms automatisch anzupassen.

Tipps für Profis

  • Experimentiere mit unterschiedlichen Diagrammtypen, um die beste visuelle Darstellung für deine Daten zu finden.
  • Nutze die Slicer in Excel Shortcut-Funktion, um deine Dashboard-Interaktivität zu verbessern.
  • Halte deinen VBA-Code organisiert und dokumentiere ihn, um die Wartung zu erleichtern.

FAQ: Häufige Fragen

1. Wie kann ich den Slicer zurücksetzen?
Du kannst den Slicer zurücksetzen, indem du auf das Filter-Symbol oben rechts im Slicer klickst und „Alle auswählen“ wählst.

2. Funktioniert dieses Skript in allen Excel-Versionen?
Das Skript sollte in den meisten Versionen von Excel, die Pivot-Tabellen und VBA unterstützen, funktionieren. Es wird empfohlen, eine aktuelle Version zu verwenden, um die besten Ergebnisse zu erzielen.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige