Formel Herausforderung - Unterschied zum letzten Eintrag - Puzzle

Inhaltsverzeichnis

Der Kontext

Vor ein paar Wochen hatte ich eine interessante Frage von einem Leser über die Verfolgung der Gewichtszunahme oder -abnahme in einer einfachen Tabelle.

Die Idee ist, jeden Tag ein neues Gewicht einzugeben und die Differenz zum vorherigen Tag zu berechnen. Wenn jeder Tag einen Eintrag hat, ist die Formel einfach:

Die Differenz wird mit einer Formel wie dieser berechnet, in D6 eingegeben und in die Tabelle kopiert:

=IF(C6"",C6-C5,"")

Wenn jedoch ein oder mehrere Tage verpasst werden, gehen die Dinge schief und das berechnete Ergebnis macht keinen Sinn:

Nein, Sie haben an einem Tag nicht 157 Pfund zugenommen

Das Problem ist, dass die Formel die leere Zelle in der Berechnung verwendet, die zu Null ausgewertet wird. Was wir brauchen, ist eine Möglichkeit, das letzte in Spalte C aufgezeichnete Gewicht zu lokalisieren und zu verwenden.

Die Herausforderung

Welche Formel berechnet eine Differenz zum letzten Eintrag, selbst wenn Tage übersprungen wurden?

Gewünschtes Ergebnis - Differenz unter Verwendung des letzten vorherigen Eintrags

Annahmen

  1. Eine einzelne Formel wird in D6 eingegeben und nach unten kopiert (dh dieselbe Formel in allen Zellen).
  2. Die Formel muss einen oder mehrere vorherige leere Einträge verarbeiten
  3. Das Entfernen leerer Einträge (Zeilen) ist nicht zulässig
  4. Keine Hilfsspalten erlaubt

Hinweis: Ein offensichtlicher Pfad ist die Verwendung einer verschachtelten IF-Formel. Ich würde davon abraten, da es nicht gut skaliert werden kann, um eine unbekannte Anzahl aufeinanderfolgender leerer Einträge zu verarbeiten.

Hast du eine Lösung? Hinterlassen Sie einen Kommentar mit Ihrer vorgeschlagenen Formel unten.

Ich habe selbst eine Formel gehackt und werde meine Lösung teilen, nachdem ich den intelligenten Lesern etwas Zeit gegeben habe, ihre eigenen Formeln einzureichen.

Extra Gutschrift

Lust auf mehr Herausforderung? Hier ist das gleiche Ergebnis mit einem benutzerdefinierten Zahlenformat. Was ist das Zahlenformat? Hinweis: Ich habe dies von Mike Alexander in seinem Bacon Bits-Blog geklaut.

Antwort (zum Vergrößern anklicken)

Im Folgenden werden wirklich gute Lösungsvorschläge aufgeführt, darunter eine sehr kompakte und elegante Lösung von Panagiotis Stathopoulos. Für die Aufzeichnung ging ich mit einem LOOKUP und einem erweiterten Sortiment:

=IF(C6"",C6-LOOKUP(2,1/($C$5:C5""),$C$5:C5),"")

Die Mechanik von LOOKUP für diese Art von Problem wird in diesem Beispiel erläutert.

Interessante Beiträge...