nachdem ich hier nun schon oft Hilfe gefunden habe, ohne explizit danach zu fragen, stehe ich nun vor einem Problem, bei dem ich weder hier noch anderswo Hilfe gefunden habe.
Es geht um Folgendes:
Ich habe eine Tabelle (Mockup hier: https://www.herber.de/bbs/user/82172.xlsm),
die in der finalen Version ca. 40 Spalten und zwischen 1.000 und 20.000 Zeilen haben wird.
Es besteht der Berdarf nach einer flexiblen Filterung (also mehr als ein Kriterium auf einmal, Verwendung auch komplexer Filter). Der normale Filter ist zwar schnell und funktioniert auch, hat aber in meinen Augen ein paar Nachteile: Es ist nicht sofort ersichtlich, welche Kriterien gefiltert sind, und es ist auch nicht klar, welche Ausprägungen gefiltert sind.
Um diese Schwächen auszubügeln, habe ich folgendes vor:
Über der Tabelle gibt es eine Zeile, in die Filterwerte eingetragen werden können. Bei Eintrag eines Filterwertes wird per "WorkSheet_Change" erkannt, der Filter in der Tabelle gesetzt, und die Spalte farblich markiert. Der Teil funktioniert wunderbar.
Andersherum soll auch erkannt werden, wenn ein Filterwert direkt in der Tabelle geändert wird. Auch dann soll die farbige Markierung vorgenommen werden und der Filterwert in die erwähnte Zelle oberhalb der Tabelle geschrieben werden.
Diesen Teil kriege ich nicht hin.
- Ich habe kein Worksheet_Change Ereignis gefunden, mit dem ich auf die Tabelle zugreifen kann
- Hilfsmethoden, um einen gesetzten Filter zu erkennen, sind nicht zuverlässig genug (Idee z.B.: Summenbildung oder Zählen sichtbarer Zeilen, um darüber ein Change-Ereignis festzustellen - aber: Wie in der beigefügten Tabelle sichtabr, können Filterwerte in einzelnen Spalten gesetzt werden, die keine Änderungen in der Filterung vornehmen - bis der Filter auch in einer anderen Spalte gesetzt wird (Hier: Filter in Spalte A ist derzeit "wirkungslos")
- Selbst wenn ich ein zuverlässiges Change-Ereignis finde, habe ich noch keine Lösung gefunden, per Makro das Filterkriterium auszulesen.
Ich denke, hier ein echt kniffliges Problem gefunden zu haben. Ich bin über jede Hilfe dankbar!
Viele Grüße,
Florian