Excel-Formel: Zählen Sie aufeinanderfolgende monatliche Bestellungen

Inhaltsverzeichnis

Generische Formel

(=MAX(FREQUENCY(IF(rng>0,COLUMN(rng)),IF(rng=0,COLUMN(rng)))))

Zusammenfassung

Um aufeinanderfolgende monatliche Bestellungen zu zählen, können Sie eine Array-Formel verwenden, die auf der FREQUENCY-Funktion mit Hilfe von COLUMN und MAX basiert.

In dem gezeigten Beispiel lautet die Formel in I5:

(=MAX(FREQUENCY(IF(C5:H5>0,COLUMN(C5:H5)),IF(C5:H5=0,COLUMN(C5:H5)))))

Hinweis: Dies ist eine Array-Formel und muss mit Strg + Umschalt + Eingabetaste eingegeben werden.

Erläuterung

Dies ist eine schwierige Formel zu verstehen, also schnall dich an!

Der Schlüssel zur Formel ist das Wissen, dass FREQUENCY Zahlen auf bestimmte Weise in "Bins" sammelt. Jeder Behälter stellt eine Obergrenze dar und generiert eine Anzahl aller Zahlen im Datensatz, die kleiner oder gleich der Obergrenze und größer als die vorherige Behälternummer sind. Der Trick besteht dann darin, das data_array mit der Bedingung zu erstellen, auf die Sie testen möchten (in diesem Fall die Anzahl der Bestellungen ist größer als Null), und das bins_array mit der entgegengesetzten Bedingung.

Um den Bin data_array zu erstellen, verwenden wir Folgendes:

IF(C5:H5>0,COLUMN(C5:H5))

Wir testen die Anzahl der Bestellungen in jedem Monat und geben, falls positiv, die Spaltennummer zurück, wobei die Anzahl der Bestellungen> 0 ist. Das resultierende Array sieht folgendermaßen aus:

(3, FALSE, FALSE, 6,7,8)

Beachten Sie, dass nur Spalten mit einer Auftragsanzahl> 0 in dieses Array gelangen.

Das Bins-Array wird folgendermaßen generiert:

IF(C5:H5=0,COLUMN(C5:H5))

Dadurch werden Spaltennummern für Auftragszählungen = 0 in ein Array eingefügt, das wie folgt endet:

(FALSE, 4,5, FALSE, FALSE, FALSE)

Nur Spalten mit der Reihenfolge der Anzahl = 0 gelangen in dieses Array, in dem sie gemäß dem Standardverhalten von FREQUENCY zu den Funktionsbereichen werden, in denen Bestellungen ungleich Null gezählt werden. Gewinne werden in FALSE übersetzt und sammeln keine Zahlen aus dem Datenarray, da FALSE-Werte ignoriert werden.

Bei den oben genannten Datenarrays und Bin-Arrays gibt die Frequenz ein Array von Zählungen pro Bin in einem Array wie dem folgenden zurück:

(1; 0; 3)

Jetzt wickeln wir einfach die MAX-Funktion um das von FREQUENCY zurückgegebene Array. MAX gibt dann die höchste Zahl im Array als Endergebnis zurück.

Andere aufeinanderfolgende Werte

Um aufeinanderfolgende Vorkommen anderer Werte zu zählen, passen Sie die Logik nach Bedarf nach demselben Muster an: Der erste Bedingungstest für das zu zählende Objekt, der zweite Bedingungstest für das Gegenteil.

Gute Links

Zählen Sie aufeinanderfolgende Zellen mit einem bestimmten Text (MrExcel)

Interessante Beiträge...