Excel-formel: Maximalt värde om -

Innehållsförteckning

Generisk formel

(=MAX(IF(range=criteria,values)))

Sammanfattning

För att få ett maximalt värde baserat på kriterier kan du använda MAX-funktionen tillsammans med IF-funktionen i en matrisformel. I exemplet som visas är formeln i cell G6:

(=MAX(IF(names=F6,times)))

Där namnen är det namngivna området B6: B17, och tiderna är det namngivna området D6: D17.

Anmärkningar: detta är en matrisformel och måste anges med Control + Shift + Enter. Senare versioner av Excel har en MAXIFS-funktion, se anmärkning nedan.

Förklaring

IF-funktionen utvärderas först. Det logiska testet är ett uttryck som testar alla namn:

IF(names=F6 // logical test

Resultatet är en array med SANT / FALSKA värden så här:

(TRUE;FALSE;FALSE;TRUE;FALSE;FALSE;TRUE;FALSE;FALSE;TRUE;FALSE;FALSE)

Sanna värden motsvarar rader där namnet är "Hannah". För alla andra namn är värdet FALSE. "Värdet om sant" för IF är det namngivna området tider , som innehåller den fullständiga uppsättningen gånger. Inget "värde om falskt" anges:

IF(names=F6,times)

Slutresultatet från IF är en matris som denna:

(0.000868055555555556;FALSE;FALSE;0.000902777777777778;FALSE;FALSE;0.000914351851851852;FALSE;FALSE;0.000833333333333333;FALSE;FALSE)

Obs! Excel-tider är bråkvärden, vilket förklarar de långa decimalerna.

IF-funktionen fungerar som ett filter. Endast tidsvärden som är associerade med SANT gör det genom filtret, andra värden ersätts med FALSE.

IF-funktionen levererar denna array direkt till MAX-funktionen, som automatiskt ignorerar FALSE-värden och returnerar maxtiden i arrayen.

Med MAXIFS

MAXIFS-funktionen, tillgänglig i Excel O365 och Excel 2019, är utformad för att returnera ett maximalt värde baserat på ett eller flera kriterier utan behov av en matrisformel. Med MAXIFS är formeln i G6:

=MAXIFS(times,names,F6)

Intressanta artiklar...