Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Wert in Zeile suchen und niedrigsten ausgeben

Wert in Zeile suchen und niedrigsten ausgeben
01.09.2015 11:31:45
Bonduca
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?

Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: mit AGGREGAT() ...
01.09.2015 11:37:59
...
Hallo,
... so: =AGGREGAT(15;6;A13:H13/(A12:H12="a");1)
Gruß Werner
.. , - ...

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

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

Anzeige
Neben Werners AGGREGAT-MIN- und WFs reiner ...
01.09.2015 20:54:23
Luc:-?
…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 :-?
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige