Seite 1 von 1

[GELÖST] ALlE Treffer ausgeben, nicht nur den 1. Treffer

Verfasst: Sa 20. Mär 2021, 18:33
von Teufelskomet
Hallo
heute habe ich zum ersten Mal mit den Matrix-Formeln in Calc gearbeitet. Möglicherweise habe ich da einen Fehler gemacht

Aufgabe: aus einem Datenbereich (C14:D27) gemäß Suchkriterium ALLE Treffer ausgeben. Konkret in der beigefügten Datei: suche alle "stark" betroffenen Bereiche heraus.

Mit SVERWEIS erhalte ich nur den 1. Treffer.

Also habe ich wieder INDEX zum Einsatz gebracht. Für die Definition der Zeilen haben ich KGRÖSSTE mit ZÄHLENWENN verwendet:

Code: Alles auswählen

KGRÖSSTE( ($D$14:$D$27=$C$9)*(ZEILE($D$14:$D$27)-13) ;ZÄHLENWENN($D$14:$D$27;$C$9)+13-ZEILE(D14))
Die Korrektur um 13 Zeilen wird erforderlich da der Datenbereich erst bei Zeile 14 beginnt.

Kombiniert mit INDEX ergibt sich dann:

Code: Alles auswählen

=INDEX($C$14:$C$27;KGRÖSSTE( ($D$14:$D$27=$C$9)*(ZEILE($D$14:$D$27)-13) ;ZÄHLENWENN($D$14:$D$27;$C$9)+13-ZEILE(D14)))
Damit das Ganze funktioniert habe ich daraus eine Matrixformel gemacht. Das war aufwendiger als ich dachte durch den variblen Bezug in ZELLE (D14).

Aber nach der vielen Arbeit habe ich einen Fehler (Denkfehler?) darin. KGRÖSSTE mit dem ZÄHLENWENN gibt beispielsweise, wenn das Suchkriterium 3x vorhanden ist, 3;2;1;0;-1;-2 usw aus. Bloß den "Nulltreffer" bekomme ich über die Matrix-INDEX-Formel nicht ausgegeben. Glaube ich. Zumindest fehlt mir immer ein Bereich.

In der beigefügten Datei wird deutlich wie ich mich langsam an die verschachtelte INDEX-Formel rangearbeitet habe.

Ich weiß nicht ob ich einen Fehler in der Syntax habe oder einen grundsätzlichen Denkfehler d.h. das es so gar nicht geht.

Für einen Tipp wäre ich dankbar.
Gruß

Re: ALlE Treffer ausgeben, nicht nur den 1. Treffer

Verfasst: So 21. Mär 2021, 08:40
von Mondblatt24
Hallo,
=INDEX($C$14:$C$27;KGRÖSSTE( ($D$14:$D$27=$C$9)*(ZEILE($D$14:$D$27)-13) ;ZÄHLENWENN($D$14:$D$27;$C$9)+13-ZEILE(D14)))

Berichtigung:
=INDEX($C$14:$C$27;KGRÖSSTE( ($D$14:$D$27=$C$9)*(ZEILE($D$14:$D$27)-13) ;ZÄHLENWENN($D$14:$D$27;$C$9)+13-ZEILE(D13)))


Gruß
Peter


PS:@Teufelskomet: Es ist an der Zeit damit anzufangen Beiträge (wenn es denn so ist) als GELÖST zu kennzeichnen. So gehtʼs

Re: ALlE Treffer ausgeben, nicht nur den 1. Treffer

Verfasst: So 21. Mär 2021, 10:16
von Teufelskomet
Hallo Peter,
So ein blöder Fehler von mir. Es ist schon fast peinlich das Forum mit so einem dummen Fehler zu belästigen.

Vielen Dank , das du dir die Mühe gemacht hast mir auf die Sprünge zu helfen.

Gruß
Teufelskomet