Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1792to1796
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Pivot mit Combobox steuern

Pivot mit Combobox steuern
16.11.2020 10:11:24
Philipp
Hallo zusammen,
wie im Titel beschrieben, möchte ich den Filter einer Pivot mittels der Combobox steuern.
Folgende Ausgangslage:
In der ComboBox werden aus einer anderen Tabelle Werte gezogen. Diese Werte sollen nun in der Pivot gefiltert werden (befinden sich im Zeilen-Fenster).
Ich habe leider absolut keine Ahnung, wie ich das anstellen kann. Über den Makro-Recorder bekomme ich einen ellenlangen Code, der m.E.n. so nicht zum Ziel führt.
Ich habe etwas versucht, was aber leider nicht funktioniert:

Private Sub ComboBox2_Change()
If ComboBox1.Value Then
With ActiveSheet.PivotTables("PivotTable1").PivotFields("Fahrzeuge")
If Not .AutoFilterMode Then .Rows(1).AutoFilter
Call .Rows(1).AutoFilter(Field:=1, Criteria1:=ComboBox1.Value)
End With
End If End Sub

Könnt ihr mir dabei eventuell auf die Sprünge helfen, wie ich die Pivot-Zeile mit der Combobox filter?
Wenn ihr noch mehr Informationen benötigt, gebt mir bitte Bescheid.

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

Betreff
Datum
Anwender
Anzeige
AW: Pivot mit Combobox steuern
16.11.2020 14:23:28
Yal
Hallo Philipp,
Geht. Ist aber umständlich. Der Makro-Recorder gibt eine Zeile pro Pivot-Element.
Gekürzt sollte es so aussehen:
Sub Test()
Felder_setzen Array("Anton", "Berta", "Cäsar")
End Sub
Sub Felder_setzen(Liste() As String)
Dim PF As PivotField
Dim Elt
Set PF = ActiveSheet.PivotTables("PivotTable1").PivotFields("Name")
PF.EnableMultiplePageItems = True
PF.ClearAllFilters
For Each Elt In Liste
PF.PivotItems(Elt).Visible = True
Next
End Sub
(ungetestet)
Alternativ kannst Du in der Datentabelle eine oder mehre Hilfsspalte, die per Formel ein Ja/Nein-wert auflistet, die Du in dem Pivot als Filter verwenden kann?
Geht schnell und ist relativ flexibel.
Deine Fragestellung ist eigentlich was man in Datenbank ein Join nennt, oder unter Excel SVerweis.
Das kann man inzwischen in Excel mit Power Query erreichen.
Viel Erfolg
Yal
Anzeige
AW: Pivot mit Combobox steuern
16.11.2020 14:58:38
fcs
Hallo Philipp,
Autofilter haben nichts mit Pivot-Tabellenberichten zu tun.
Pivot-Tabellenberichte haben ihre eigene VBA-Objekt-Welt.
Nachfolgend mein Vorschlag für das Filtern des Pivot-Berichtes.
Achte darauf, dass der Name der Combobox im Makronamen mit dem Namen der Combobox im weiteren Code übereinstimmt. Es sei denn, du willst tatsächlich Combobox2 benutzen, um das Makro zu starten und nach dem Wert von Combobox1 zu filtern.
LG
Franz

Private Sub ComboBox2_Change()
Dim pvTab As PivotTable, pvField As PivotField
Set pvTab = ActiveSheet.PivotTables("PivotTable1")
Set pvField = pvTab.PivotFields("Fahrzeuge")
If ComboBox2.ListIndex > -1 Then
With pvField
.ClearAllFilters
.PivotFilters.Add2 Type:=xlCaptionEquals, Value1:=ComboBox2.Value
End With
End If
End Sub

Anzeige
AW: Pivot mit Combobox steuern
16.11.2020 15:59:34
Philipp
Hallo ihr Zwei,
Danke für Eure Antworten.
Franz, die von dir hab ich verwendet und es funktioniert so, 1000 Dank!
Das war ein Fehler meinerseits, natürlich will ich alles aus einer Combobox steuern!
Grüße Philipp

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige