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

Datenschnitt auf 2 Pivots

Forumthread: Datenschnitt auf 2 Pivots

Datenschnitt auf 2 Pivots
18.03.2019 14:36:18
jan
Hallo liebe Gemeinde,
ich habe eine Pivot mit zwei Tabellen (welche wiederum als SQL-Datenverweis vorliegen).
Dazu habe ich je Pivot einen Datenschnitt jeweils auf das Feld "user_id" gemacht. Leider klappt das hinterlegte Script von Luschi nicht, welches ich versucht habe zu integrieren.
Es sollte eigentlich dazu führen, dass bei einem Klick auf EINES der Datenschnitte BEIDE Pivots gefiltert werden.
Habt ihr vielleicht eine Idee für die Anpassung ?
Danke !
Die Excel liegt hier: https://www.dropbox.com/s/75ds2f7w31g9rd8/test_datenschnitt.xlsm?dl=0
Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: Datenschnitt auf 2 Pivots
18.03.2019 16:53:46
Luschi
Hallo Jan,
warum innerhalb so kurzer Zeit mehrere Anfragen zum selben Thema? Mein Makro kann so nicht funktionieren, da es für das Ereignis 'Worksheet_Change' und nicht für 'Worksheet_PivotTableUpdate' erstellt war, denn 'Worksheet_PivotTableUpdate' wird beim Bedienen des Datenschnittes gar nicht ausgelöst.
Außerdem zäumst Du das Problem von der falschen Seite her auf; anders herum wird ein Schuh draus:
Mehrere Pivot-Tabellen über einen Datenschnitt filtern
Siehe dazu das folgende Video: https://www.youtube.com/watch?v=4gQCNy0cBrQ
Gruß von Luschi
aus klein-Paris
Anzeige
AW: Datenschnitt auf 2 Pivots
18.03.2019 18:15:26
jan
Hallo Luschi,
Danke (meine früheren Eingaben waren Fehler, ich komm mit der Bedienung des Forums irgendwie nicht so ganz klar :)). Sorry !
Das Video bezieht sich auf Datenschnitte für EINE Datenquelle, wenn ich das richtig verstanden habe. Ich habe ZWEI Pivots aus ZWEI unterschiedlichen Datenquellen. Diese lassen sich so irgendwie leider nicht verbinden, über diese "Pivot-Verbindungen" oder ?
Anzeige
AW: Datenschnitt auf 2 Pivots
18.03.2019 18:37:51
jan
Hallo Luschi,
ich habe mir das Script von dir noch mal angesehen, es hatte einen "Worksheet_PivotTableUpdate" Aufruf oder verstehe ich da was falsch ?
Private Sub Worksheet_PivotTableUpdate(ByVal Target As PivotTable)
Dim sc As SlicerCache, sc1 As SlicerCache, sci As SlicerItem
Set sc = ActiveWorkbook.SlicerCaches("Datenschnitt_Name")    'ausgeführt
Set sc1 = ActiveWorkbook.SlicerCaches("Datenschnitt_Name1")  'geplant
Application.EnableEvents = False
sc.ClearManualFilter
For Each sci In sc1.SlicerItems
'Debug.Print sci.Name
sc.SlicerItems(sci.Name).Selected = sci.Selected
Next sci
'Target.RefreshTable
Application.EnableEvents = True
Set sc = Nothing
Set sc1 = Nothing
End Sub
Bestimmt hab ich hier ein Missverständnis, weil ich zu wenig Ahnung von VBA habe, Danke trotzdem für die Geduld !!
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Datenschnitt für mehrere Pivot-Tabellen optimal nutzen


Schritt-für-Schritt-Anleitung

Um einen Datenschnitt für mehrere Pivot-Tabellen zu erstellen, befolge diese Schritte:

  1. Daten vorbereiten: Stelle sicher, dass Deine beiden Pivot-Tabellen aus verschiedenen Datenquellen stammen, z.B. SQL-Datenverweisen.
  2. Pivot-Tabellen erstellen: Erstelle Deine Pivot-Tabellen basierend auf den jeweiligen Datenquellen. Achte darauf, dass die Felder, die Du filtern möchtest, identisch sind (z.B. "user_id").
  3. Datenschnitt hinzufügen:
    • Gehe zu einem der Pivot-Tabellen.
    • Klicke auf „Einfügen“ und wähle „Datenschnitt“.
    • Wähle das Feld (z.B. "user_id") aus, das Du filtern möchtest.
  4. VBA-Skript einfügen: Um den Datenschnitt zu verbinden, musst Du ein VBA-Skript verwenden:
    • Öffne den VBA-Editor (Alt + F11).
    • Füge das folgende Skript in das entsprechende Arbeitsblatt ein:
Private Sub Worksheet_PivotTableUpdate(ByVal Target As PivotTable)
    Dim sc As SlicerCache, sc1 As SlicerCache, sci As SlicerItem
    Set sc = ActiveWorkbook.SlicerCaches("Datenschnitt_Name")    ' Ersetze mit dem Namen Deines Datenschnitts
    Set sc1 = ActiveWorkbook.SlicerCaches("Datenschnitt_Name1")  ' Ersetze mit dem Namen des zweiten Datenschnitts
    Application.EnableEvents = False
    sc.ClearManualFilter
    For Each sci In sc1.SlicerItems
        sc.SlicerItems(sci.Name).Selected = sci.Selected
    Next sci
    Application.EnableEvents = True
    Set sc = Nothing
    Set sc1 = Nothing
End Sub
  1. Überprüfen: Teste den Datenschnitt, indem Du auf die verschiedenen Filter klickst und beobachtest, ob beide Pivot-Tabellen entsprechend aktualisiert werden.

Häufige Fehler und Lösungen

  • Fehler: Die Pivot-Tabellen aktualisieren sich nicht.

    • Lösung: Überprüfe, ob das VBA-Skript korrekt eingefügt wurde und dass die Namen der Datenschnitte stimmen.
  • Fehler: Datenschnitt wird nicht angezeigt.

    • Lösung: Vergewissere Dich, dass die Pivot-Tabellen aus denselben Datenquellen stammen oder dass Du die richtigen Verbindungen hergestellt hast.
  • Fehler: Das Skript führt zu einem Laufzeitfehler.

    • Lösung: Stelle sicher, dass die SlicerCaches korrekt benannt sind und dass Du keine Tippfehler hast.

Alternative Methoden

Wenn Du Schwierigkeiten mit dem VBA-Skript hast, kannst Du auch folgende Methoden in Betracht ziehen:

  1. Datenmodell verwenden: Nutze das Excel-Datenmodell, um mehrere Datenquellen zu verbinden. Dadurch kannst Du einen Datenschnitt für mehrere Pivot-Tabellen ohne VBA verwenden.
  2. Manuelle Filter: Filtere die Pivot-Tabellen manuell, anstatt einen Datenschnitt zu verwenden. Dies ist weniger effizient, funktioniert aber in einfachen Szenarien.
  3. Power Pivot: Mit Power Pivot kannst Du Daten aus verschiedenen Quellen importieren und dann einen Datenschnitt für mehrere Pivot-Tabellen erstellen.

Praktische Beispiele

Hier sind einige Anwendungsbeispiele:

  • Verwendung von „user_id“: Wenn Du zwei Pivot-Tabellen hast, die Verkaufsdaten und Kundendaten darstellen, kannst Du einen Datenschnitt für „user_id“ verwenden, um beide Tabellen basierend auf den gleichen Kunden zu filtern.

  • Analysiere verschiedene Regionen: Du kannst einen Datenschnitt für Regionen erstellen und damit Verkaufsdaten aus verschiedenen Datenquellen analysieren.


Tipps für Profis

  • Verwende benannte Bereiche: Dies erleichtert die Verwaltung der Datenquellen und macht das Skript übersichtlicher.
  • Teste in einer Kopie: Arbeite immer in einer Kopie Deiner Datei, um Datenverluste zu vermeiden.
  • Dokumentation: Halte Deine VBA-Codes gut dokumentiert, um die Wartung zu erleichtern.

FAQ: Häufige Fragen

1. Kann ich einen Datenschnitt für mehrere Pivot-Tabellen ohne VBA verwenden? Ja, das ist möglich, wenn Du das Excel-Datenmodell oder Power Pivot verwendest.

2. Was sind die Vorteile eines Datenschnitts? Ein Datenschnitt ermöglicht eine einfachere und visuelle Filterung Deiner Pivot-Tabellen, was die Analyse von Daten erheblich vereinfacht.

3. Wie kann ich sicherstellen, dass die Datenquellen korrekt verbunden sind? Verwende die Datenverbindungen in Excel, um sicherzustellen, dass alle Datenquellen korrekt integriert sind. Du kannst auch die „Vorhandene Verbindungen“ überprüfen.

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