Ich verwende im Büro umfangreiche Pivot-Tabellen mit vielen Spalten und möchte die Handhabung vereinfachen.
Mein aktuelles Projekt :
Ich möchte durch Anklicken des jeweiligen Pivot-Feldnamens (also des "Spaltenkopfes") eine Textboxsuche (Beschriftungsfilter) starten und den Pivot-Bericht nach dem eingegebenen Suchbegriff in der jeweiligen Spalte filtern.
Mit einem weiteren Klick soll der Filter zurückgesetzt und die Liste wieder eingeblendet werden.
Den größten Teil des Codes habe ich beisammen und zum Filtern benutze ich folgenden (vereinfacht dargestellten) Code :
'1.Pivotfilter setzen
On Error Resume Next
Dim SUCH As String
SUCH = InputBox("Bitte Suchbegriff eingeben")
ActiveSheet.PivotTables("PivotTable2").PivotFields("Ort").PivotFilters _
.Add Type:=xlCaptionContains, Value1:=SUCH
'2.Pivotfilter-Reset
On Error Resume Next
ActiveSheet.PivotTables("Pivottable2").PivotFields("Ort"). _
ClearLabelFilters
End Sub
Im Beispiel suche und filtere ich in der ersten Spalte durch Abfrage des PivotFields mit dem Namen "Ort" (in Zelle A2).
Ich müsste jetzt aber für jede Spalte eine neue Suchroutine mit einem anderen Pivotfield-Namen erstellen.
Meine Frage :
Kann man den Pivotfield-Namen in diesem Code als Variable definieren, so daß beim Anklicken von A2
die erste Spalte, beim Anklicken von B2 die zweite Spalte etc. ausgewählt wird ?
Für Eure Hilfe bedanke ich mich herzlich.
Gruß
Wolfgang
https://www.herber.de/bbs/user/139392.xlsm