2016-07-28 9 views
-1

Ich möchte auf Excel den Maximalwert von n Werte aus einer Liste von Werten erhalten, die n ist variabel. Hier ist ein Beispiel mit n = 5: Explanation: it starts at A6 when it have 5 values and enough data to compute the max of the 5 previous values, so it looks backwardsDie max von n-Werten, übertreffen

Erläuterung: es A6 beginnt, wenn es 5 Werte hat und genügend Daten, um den max der 5 vorherigen Werte zu berechnen, so dass es rückwärts blickt.

Ein anderes Beispiel mit n = 10:

The range is always looking backwards the number of values that the constant is, so if constant =10 then it looks the 10 previous values. Was ich brauche, ist die Formel oder Matrixformel der Spalte B, die den Bereich zu suchen, die max, wenn die konstanten Wertänderungen ändern.

Haben Sie Fragen, fragen Sie mich. Danke.

Antwort

0

der unten ignorieren. Hier ist eine andere Lösung von @tigeravatar versehen, die ich verlassen, weil es sogar sauberer als seine aktuelle Lösung:

=IF(ROW()<=$C$2,"",MAX(OFFSET(A2,0,0,-$C$2,1))) 

Eine weitere Option, obwohl mehr gewunden. Legen Sie in B2 und abschreiben:

=IF(ROW()=$C$2+1,MAX(OFFSET($A$2,0,0,$C$2,1)),IF(ROW()>$C$2+1,MAX(OFFSET(A2,0,0,$C$2,1)),"")) 

+0

Unter Verwendung des angegebenen ersten Beispiels, bei dem die Konstante = 5 ist, gibt Zelle B7 ein falsches Ergebnis von 10 zurück, da B7 den Bereich als A7: A11 statt des korrekten Bereichs von A3 auswertet: A7 – tigeravatar

+0

Sie können dies korrigieren, indem Sie '- $ C $ 2 'in der zweiten Offset-Funktion – tigeravatar

+0

In der Tat könnten Sie die Formel sehr vereinfachen, um einfach zu sein = IF (ROW() <= $ C $ 2, "", MAX (OFFSET (A2,0,0, - $ C $ 2,1))) ' – tigeravatar

2

Arbeiten mit zwei Beispielen zur Verfügung gestellt, in der Zelle B2 und kopiert nach unten:

=IF(OR($C$2="",ROW(B1)<$C$2),"",MAX(INDEX(A:A,ROW(A2)-$C$2+1):A2)) 
+0

Ja, das funktioniert für mich! Vielen Dank. –

+1

Unterscheidet sich Ihre tatsächliche Einrichtung von den von Ihnen bereitgestellten Beispielen? Welchen Fehler gibt es dir? Können Sie ein repräsentativeres Beispiel Ihrer tatsächlichen Daten zeigen? Ich habe das getestet und kann bestätigen, dass es richtig funktioniert – tigeravatar

+0

dito auf dem Test! –