Microsoft Office Forum [ www.Office-Fragen.de ] >> READONLY <<

Microsoft Office 2003-2019 => Excel => Thema gestartet von: Puffke am September 10, 2018, 21:17:18 Nachmittag

Titel: Spaltenmaxima einer Matrix zählen
Beitrag von: Puffke am September 10, 2018, 21:17:18 Nachmittag
Hallöchen,

ich sitze an folgendem Problem, das ich mit meinem Wissen über Formeln und deren Verknüpfung einfach nicht lösen kann:

Ich habe eine Matrix (z.B. 5x5 groß) mit unterschiedlichen reellen Dezimalwerten. Jede Spalte hat ja nun jeweils ein Maximum und ich möchte für jede Zeile wissen, wie oft dort solch ein Spaltenmaximum auftaucht.

Ich probiere an verschiedenen Kombinationen mit MAX, ZÄHLENWENN, SUMME, WENN etc. herum, mal mit und mal ohne Arrayklammer, aber es will einfach nicht klappen. Für Zeile 1 hatte ich z.B. schon mal
{=Zählenwenn(A1:E1;MAX(A1:A5))}
aber das MAX wandert im Array nicht mit und sieht immer nur Spalte A anstatt nacheinander A bis E.

Ich hoffe, ihr könnt mir da weiterhelfen.
LG, Christian
Titel: Antw: Spaltenmaxima einer Matrix zählen
Beitrag von: DL am September 10, 2018, 22:01:34 Nachmittag
Hallo


In A7:B7:
=MAX(A1:A5)In G1:G5:
=SUMMENPRODUKT(ZÄHLENWENN(A1:E1;$A$7:$E$7))
Titel: Antw: Spaltenmaxima einer Matrix zählen
Beitrag von: Puffke am September 11, 2018, 16:34:31 Nachmittag
Ok, Danke schonmal!

Das i-Tüpfelchen wäre noch eine kleine Fehlerbehebung:

Deine Formel ZÄHLENWENN erzeugt ein Array aus "Treffern", die durch SUMMENPRODUKT addiert werden. Soweit alles gut.
Wenn zufällig ein Wert in der Matrix mehrfach auftaucht und gleichzeitig dummerweise auch jeweils das Spaltenmaximum ist, ist die Summe am Ende leider zu groß, da ZÄHLENWENN plötzlich alle Max-Werte zählt.
Kann man das noch einfach beheben?

Und was ich im ersten Post noch erwähnen wollte: Schafft man das ganze auch in einer einzigen Formel? Ich hasse Hilfszeilen, da sie die ganzen Arbeitsblätter unnötig voll machen.
LG
Titel: Antw: Spaltenmaxima einer Matrix zählen
Beitrag von: DL am September 11, 2018, 18:02:49 Nachmittag
Weil du so auf Hilfszellen stehst ...  :)


A8:E8
=ZÄHLENWENNS($A7:A7;A7)A9:E9
=WENN(A8=1;A7)[size=78%]G1:G5[/size]
=MMULT(--($A$1:$E$5=$A$7:$E$7);{1;1;1;1;1})