Excel-formel: Telle påfølgende månedlige bestillinger -

Innholdsfortegnelse

Generisk formel

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

Sammendrag

For å telle månedlige påfølgende ordrer, kan du bruke en matriseformel basert på FREKVENS-funksjonen, med hjelp fra KOLONN og MAKS.

I eksemplet vist er formelen i I5:

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

Merk: dette er en matriseformel og må angis med Control + Shift + Enter.

Forklaring

Dette er en vanskelig formel å forstå, så spenne opp!

De er nøkkelen til formelen er å vite at FREKVENS samler tall i "søppel" på en bestemt måte. Hver søppel representerer en øvre grense, og genererer et antall antall tall i datasettet som er mindre enn eller lik den øvre grensen, og større enn det forrige søppelnummeret. Trikset er da å lage data_array ved å bruke tilstanden du vil teste for (ordretelling større enn null i dette tilfellet), og bins_array ved å bruke den motsatte tilstanden.

For å lage data_array bin bruker vi følgende:

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

Vi tester antall ordrer i hver måned, og hvis det er positivt, returnerer vi kolonnetallet der ordretellingen> 0. Den resulterende matrisen ser slik ut:

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

Legg merke til at bare kolonner der ordretelling> 0 gjør det til denne matrisen.

Søppelbøylene genereres med dette:

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

Dette setter kolonnetall for ordretellinger = 0 i en matrise som ender slik:

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

Bare kolonner der rekkefølgen teller = 0 gjør det til denne matrisen der de per standard FREKVENS-oppførsel blir de funksjonelle søppelkassene som stemmer overens med ikke-null ordrer. Gevinster blir oversatt til FALSE og samler ikke inn noen tall fra dataarrayen, siden FALSE-verdier blir ignorert.

Med dataarray og bin arrays ovenfor, returnerer frekvens en array med tellinger per bin i en array som dette:

(1; 0; 3)

Nå vikler vi bare MAX-funksjonen rundt matrisen som returneres av FREQUENCY. MAX returnerer deretter det høyeste tallet i matrisen som det endelige resultatet.

Andre fortløpende verdier

For å telle sammenhengende forekomster av andre verdier, er det bare å justere logikken etter behov etter samme mønster: den første tilstandstesten for det du vil telle, den andre tilstandstesten for det motsatte.

Gode ​​lenker

Telle påfølgende celler med spesifikk tekst (MrExcel)

Interessante artikler...