Unike Werte aus gefilterter Liste extrahieren (3)
25.10.2016 11:46:27
Marie
Wie gehts? Ich war schonmal da, die Frage hat sich aber noch nicht vollständig erledigt. Da der vorhergehende Beitrag geschlossen ist, eröffne ich wie von Werner empfohlen einen neuen mit den relevanten Infos und einer Beispieldatei (https://www.herber.de/bbs/user/109007.xlsx).
(FYI: Ich nutze Excel 2016, es wäre schön, wenn es auch auf den 1-2 Vorgängerversionen liefe.)
Also:
Ich möchte aus einem INPUTBEREICH (J39:J64) die uniken Werte automatisch herausfiltern und in eine dynamische ERGEBNISLISTE (J2:J33) schreiben lassen. Dabei ist es wichtig, dass nach Anwendung von Filterungen auf verschiedene Spalten nur die sichtbaren (!) Zellen des INPUTBEREICHS ausgewertet werden. Die ERGEBNISLISTE soll über eine Formel erzeugt werden (kein VBA/Pivot o.ä.), da Grafiken direkt auf diese Werte ziehen und automatisch mit aktualisiert werden sollen.
Meine aktuelle Lösung (dank bereits erhaltenem Hinweis hier im Forum) ist dem Anhang zu entnehmen (mit R38:R64 und K1 als HELPER). Die Formel in Zelle J2 lautet bspw. =IF(K$1="Start",IFERROR(INDEX(J:J,AGGREGATE(15,6,ROW(R$39:R$65)/(COUNTIF(J$1:J1,J$39:J$65)=0)/(R$39:R$65),1)),""),"")
Zusatzinfo 1: In der Realität hat der INPUTBEREICH eine Länge von ca. 40.000 (also sowas wie J39:J40039). Die ERGEBNISLISTE bleibt identisch, da nach Nutzung der Filter nie mehr als 32 MLabels in der gefilterten Liste enthalten sind.
Zusatzinfo 2: Nach Erstellung der Vorlage möchte ich die Datei theoretisch auch Personen zur Verfügung stellen, die weniger Excel-affin sind (noch weniger als ich;-)). Daher suche ich, falls möglich, eine einfache und gleichzeitig performante Lösung.
Fragen:
1) In dem aktuellen Beispiel werden die MLabels im ERGEBNISBEREICH genau 1x hingeschrieben. So soll es sein. In einer Version mit 30.000 Einträgen im INPUTBEREICH führt aber leider zu einem Fehler: Hier werden MLabels im ERGEBNISBEREICH doppelt aufgeführt.
Kann es daran liegen, dass die Anzahl der uniken Werte größer als der ERGEBNISBEREICH lang ist? (Mich stört es nicht, dass die uniken Werte ohne jegliche Filterung nicht vollständig im ERGEBNISBEREICH angezeigt werden, da in der Realität jede Person seine eigene Selektion filtert und dann nie mehr als 32 Labels enthalten sein werden. Aber mich irritiert, dass ohne Filterung Werte im ERGEBNISBEREICH doppelt auftauchen, weil ich Sorge habe, dass die Formel vielleicht noch einen Fehler hat.) Falls es einer ganz anderen Formel bedarf, wäre es okay. Ansonsten macht diese ja im Prinzip genau das, was ich möchte :).
2)Um die Performance zu erhöhen, könnte es Sinn machen, in der Formel den ersten Input der Index-Formel zu beschränken. D.h. die Formel müsste ja nicht über J:J ausgewertet werden, sondern J39:J65 würde ja reichen. Mir ist die Anpassung der Formel nicht fehlerlos gelungen. Kann jemand helfen?
Es wäre klasse, wenn jemand, ders drauf hat, mir nochmal einen Tip geben könnte!
Ganz vielen Dank
Eli