Ich muss den Maximalwert aus einer variablen Anzahl von Zeilen und Spalten abrufen, deren Zeilenüberschrift einem bestimmten Wert entspricht. 300 im obigen Beispiel würde ein Maximum von 15 zurückgeben.
Ich versuche, eine Formel zu erstellen, bei der die Zeilenüberschrift (z. B. 300) eine Variable wäre, sodass der Höchstwert für die Zeilenüberschriften 300 oder 600 usw. zurückgegeben werden könnte.
Wie erhalte ich einen Bereich oder ein Array aller Zeilen mit 300 als Überschrift, sodass ich die Max-Funktion auf diesen Bereich anwenden kann?
Antwort1
Legen Sie Ihre300InFormel 1, dann inT1 (T1)Geben Sie die Array-Formel ein:
=MAX(IF(A1:A100=F1,B1:C100))
Array-FormelnCtrlmuss mit + Shift+ eingegeben werden, Enternicht nur mit der EnterTaste. Wenn dies richtig gemacht wird, wird die Formel in geschweiften Klammern in der Formelleiste angezeigt.
Wegen der KolumneAKriterien, die101pro Reihe14wird ignoriert.
Antwort2
Wenn Sie Office 365 Excel haben, lautet die normale Formel:
=MAX(MAXIFS(B:B,A:A,300),MAXIFS(C:C,A:A,300))
Sie können die beiden 300 durch eine Zelladresse ersetzen. Da es sich hier nicht um eine Array-Formel handelt, sind vollständige Spaltenverweise ohne Nachteile möglich.
Antwort3
Hier ist eine etwas allgemeinere Antwort:
Angenommen, Sie möchten die MAX-Werte (oder MIN-Werte, MEDIAN-Werte usw.) der in den Spalten C und D erscheinenden numerischen Werte für die zusammenhängende Teilmenge der Zeilen i bis j in einem Array berechnen, das sich von den Zeilen 6 bis N erstreckt, wobei der Wert von „Zeile“ in Spalte B eingegeben wird. Lassen Sie den expliziten Wert von i in B2 und den von j in B3 angeben (wobei diese Werte möglicherweise a priori an anderer Stelle in Ihrer Tabelle berechnet wurden). Lassen Sie hier der Transparenz halber i = 9 und j = 14, wobei n = 15 ist.
Hier ist der Excel2003-Code, den ich entwickelt habe und der einwandfrei zu funktionieren scheint:
{=MAX(IF(B6:B15>=B2,IF(B6:B15<=B3,C6:C15),""))} , was MAX(C9:C14) zurückgibt; und,
{=MAX(IF(B6:B15>=B2,IF(B6:B15<=B3,D6:D15),""))}, was MAX(D9:D14) zurückgibt.
Ändern Sie einfach MAX in MIN oder einen anderen Funktionsnamen, um analoge Berechnungen durchzuführen. Vergessen Sie jedoch nicht, diese „geschwungenen Klammern“ erneut zu installieren (Strg-Umschalt-Eingabe), da diese jedes Mal verschwinden, wenn Sie die Anweisung bearbeiten.