Excel-Formel zum Zählen der Anzahl der Zellen seit dem letzten Wert ungleich Null

Excel-Formel zum Zählen der Anzahl der Zellen seit dem letzten Wert ungleich Null

Ich habe mehrere Spalten, die die Umsätze pro Monat angeben. Die folgende Spalte könnte beispielsweise anzeigen, dass dieser Kunde vor zwei Monaten einen Umsatz von 3.555 US-Dollar erzielt hat.

0,0,0,0,0,0,0,0,0,3555,0,0

Ich brauche eine Formel zur Berechnung der Anzahl der Monate seit dem letzten Verkauf, d. h. das Ergebnis sollte in diesem Fall 2 sein.

Antwort1

Um Jooks Antwort genauer zu erläutern:

Angenommen, die Umsatzwerte für die Monate 1 bis 12 befinden sich in den Zellen A1:L1.

Wir können eine Array-Formel verwenden, um das gewünschte Ergebnis zu finden:

=COLUMN(L1)-MAX(IF(A1:L1>0,COLUMN(A1:L1),0))

Geben Sie die Formel ein und drücken Sie Ctrl+ Shift+ aus Enter , um sie als Matrixformel zu kennzeichnen. Excel zeigt automatisch geschweifte Klammern an:

{=COLUMN(L1)-MAX(IF(A1:L1>0,COLUMN(A1:L1),0))}

(Geben Sie die Klammern nicht ein.)

Dadurch wird ein virtuelles Array erstellt, das die Spaltennummern der Zellen enthält, deren Umsätze größer als Null sind, und die höchste Spaltennummer findet (d. h. die, die am nächsten zum Ende des Berichtszeitraums liegt). Anschließend müssen wir diesen Wert von der Nummer der letzten Spalte abziehen.

Antwort2

Hier ist eine schnelle Lösung dafür. Allerdings braucht man eine Hilfszeile, das heißt, es gibt noch Raum für Verbesserungen. Vielleicht kann es jemand anderes von hier übernehmen.

Dies ist das Setup:

month 1 2 3 4 5 6 7 8 9 10 11 12
sale  0 0 0 0 5 0 0 0 8 11 0  0 
help  0 0 0 0 5 0 0 0 9 10 0  0

Hilfe-Formel:

IF(SALE>0,MONTH,0) - IF(A2>0,A1,0)

Monate seit dem letzten Verkauf:

MAX(A1:L1)-MATCH(MAX(A3:L3);A3:L3;0)

Das Hauptproblem besteht darin, die maximale Spaltenanzahl mit einem Verkaufswert größer als 0 zu erreichen. Im Moment fallen mir nur VBA und Matrixfunktionen ein, um dies ohne die Hilfszeile zu lösen. Aber ich habe das Gefühl, dass mir etwas fehlt.

verwandte Informationen