Where names is the named range B6:B17, and times is the named range D6:D17. Notes: this is an array formula and must be entered with Control + Shift + Enter. Later versions of Excel have a MAXIFS function, see note below. The result is an array of TRUE / FALSE values like this: TRUE values correspond to rows where the name is “Hannah”. For all other names, the value is FALSE. The “value if true” for IF is the named range times, which contains the full set of times. No “value if false” is provided: The final result from IF is an array like this: Note: Excel times are fractional values, which explains the long decimals. The IF function acts like a filter. Only time values associated with TRUE make it through the filter, other values are replaced with FALSE. The IF function delivers this array directly to the MAX function, which automatically ignores FALSE values and returns the max time in the array.


The MAXIFS function, available in Excel O365 and Excel 2019, is designed to return a maximum value based on one or more criteria without the need for an array formula. With MAXIFS, the formula in G6 is:

Dave Bruns

Hi - I’m Dave Bruns, and I run Exceljet with my wife, Lisa. Our goal is to help you work faster in Excel. We create short videos, and clear examples of formulas, functions, pivot tables, conditional formatting, and charts.