Excel-formule: maximale waarde als -

Inhoudsopgave

Generieke formule

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

Samenvatting

Om een ​​maximale waarde te krijgen op basis van criteria, kunt u de MAX-functie samen met de ALS-functie in een matrixformule gebruiken. In het weergegeven voorbeeld is de formule in cel G6:

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

Waarbij namen het benoemde bereik B6: B17 is, en tijden het benoemde bereik D6: D17.

Opmerkingen: dit is een matrixformule en moet worden ingevoerd met Control + Shift + Enter. Latere versies van Excel hebben een MAXIFS-functie, zie onderstaande opmerking.

Uitleg

De ALS-functie wordt eerst geëvalueerd. De logische test is een uitdrukking die alle namen test:

IF(names=F6 // logical test

Het resultaat is een reeks TRUE / FALSE-waarden als volgt:

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

TRUE-waarden komen overeen met rijen waarvan de naam "Hannah" is. Voor alle andere namen is de waarde FALSE. De "waarde indien waar" voor IF is de genoemde reeks tijden , die de volledige set tijden bevat. Er wordt geen "waarde indien onwaar" opgegeven:

IF(names=F6,times)

Het uiteindelijke resultaat van IF is een array als deze:

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

Opmerking: Excel-tijden zijn fractionele waarden, wat de lange decimalen verklaart.

De ALS-functie werkt als een filter. Alleen tijdwaarden die aan TRUE zijn gekoppeld, komen door het filter, andere waarden worden vervangen door FALSE.

De IF-functie levert deze array rechtstreeks aan de MAX-functie, die automatisch FALSE-waarden negeert en de maximale tijd in de array retourneert.

Met MAXIFS

De MAXIFS-functie, beschikbaar in Excel O365 en Excel 2019, is ontworpen om een ​​maximale waarde te retourneren op basis van een of meer criteria zonder dat een matrixformule nodig is. Met MAXIFS is de formule in G6:

=MAXIFS(times,names,F6)

Interessante artikelen...