Wert in Zeile suchen und niedrigsten ausgeben

Bild

Betrifft: Wert in Zeile suchen und niedrigsten ausgeben
von: Bonduca
Geschrieben am: 01.09.2015 11:31:45

Hallo zusammen,
ich habe gerade einen Knoten im Hirn und komme nicht weiter.
Ich habe in Zeile 12 meine "Überschriften". Diese können auch doppelt vorkommen.
In Zeile 14 habe ich die "Überschriften" ohne doppelte.
Ich möchte jetzt mithilfe von Zeile 12 die Inhalte aus Zeile 13 abfragen.
Als Ergebnis soll mir der niedrigste Wert ausgegeben werden und in Zeile 15 geschrieben werden
Z.B. Ich schaue mir den ersten Buchstabe in Zeile 14 (Buchstabe a) an und vergleiche ihn mit Zeile 12. Hier habe ich 2 Ergebnisse: 4,2 und 3,2. Nun soll der niedrigste Wert der beiden ausgegeben werden und in Zeile 15 eingetragen werden.


Zeile 12    a    b    c    d     b    c     a    d
Zeile 13    4,2  2,2  3,2  5,4  3,28  4,32  3,2  1,4
Zeile 14    a    b    c     d
Zeile 15    3,2  2,2  3,2   1,4
Kann mir hier jemand helfen?

Bild

Betrifft: AW: mit AGGREGAT() ...
von: ... neopa C
Geschrieben am: 01.09.2015 11:37:59
Hallo,
... so: =AGGREGAT(15;6;A13:H13/(A12:H12="a");1)
Gruß Werner
.. , - ...

Bild

Betrifft: AW: mit AGGREGAT() ...
von: Bonduca
Geschrieben am: 01.09.2015 13:49:37
Perfekt!
Genau was ich haben wollte!
Danke!

Bild

Betrifft: ohne AGGREGAT
von: WF
Geschrieben am: 01.09.2015 12:08:50
Hi,
{=MIN(WENN(A12:H12="a";A13:H13))}
Salut WF

Bild

Betrifft: Neben Werners AGGREGAT-MIN- und WFs reiner ...
von: Luc:-?
Geschrieben am: 01.09.2015 20:54:23
…MIN-Lösung ist auf der Basis der letzteren auch eine KomplettLösung mit nur einer mehr­zelligen MatrixFml für alle Ergebnisse möglich, Bonduca,
wobei WFs Lösung als 1zellige MatrixFml komplett so aussehen könnte (ziehbar über Spalten):
A15[:D15]: {=MIN(WENN($A12:$H12=A14;$A13:$H13))}
Als mehrzellige* MatrixFml sähe das dann so aus:
A15:D15: {=MIN(INDEX(WENN(MTRANS(A12:H12)=A14:D14;MTRANS(A13:H13));0;SPALTE()))}
…oder kürzer so:
A15:D15: {=MIN(INDEX(WENN(A12:H12=MTRANS(A14:D14);A13:H13);SPALTE();0))}
Natürlich gibt's hierfür auch noch gleichartige Lösungen auf Basis von (zZ nicht zur Veröffent­lichung vorgesehenen) UDFs (deshalb hier nur als Bsp):
A15:D15: {=MTRANS(TransFor(A14:D14;"min(if(A12:H12=#14,A13:H13))"))}
A15:D15: {=Compute("min(if(A12:H12=index(A14:D14,#),A13:H13))";1,4)}
…aber auch als ziehbare NormalFml mit UDF (die zur Veröffentlichung vorgesehene UDF-Variante ist noch in Bearbeitung):
A15[:D15]:=MIN(ChooseIn($A13:$H13;$A12:$H12;A14;0))
Übrigens kann auch Zeile14 ganz einfach mit 2 im Archiv zu findenden UDFs erzeugt wdn: A14:D14: {=VSplit(VJoin(A12:H12;;1))}
* Vorteil: Nur eine Berechnung auf Basis mehrerer Vergleichswerte mit Ausgabe aller Ergebnisse auf 1×! Anderen­falls wird die Vergleichs­matrix pro Zelle neu aufgebaut.
   Nachteil: Ergebnisse bilden eine untrennbare Einheit!

Gruß, Luc :-?

 Bild

Beiträge aus den Excel-Beispielen zum Thema "Wert in Zeile suchen und niedrigsten ausgeben"