RANK, LARGE and SMALL
Rank a list either way round, build a top-three table, and put a name to each place. Intermediate · 5 min · RANK, LARGE, SMALL, INDEX/MATCH
Raw numbers tell you how much. A ranking tells you where someone stands, which is often the question people really want answered.
=RANK(number, list)gives a value's position in a list, with the largest as 1. Add a third argument of1to put the smallest first.=LARGE(list, k)returns the k-th largest value and=SMALL(list, k)the k-th smallest. With k = 1 they match MAX and MIN.
> RANK compares each value with the whole list, so lock the list with $ before you copy the formula down.
Steps
Your running club logs how far each member ran this month. In
D2, rank Priya's distance against the whole list with=RANK(B2, $B$2:$B$13), then fill it down toD13.For race times, smaller is better. In
E2:E13, rank the 5K times in column C so the fastest runner gets 1, by adding a third argument of1:=RANK(C2, $C$2:$C$13, 1)Time for a podium. In
H2, find the longest distance with=LARGE($B$2:$B$13, G2), using the place number inG2as k. Fill it down toH4for 2nd and 3rd place.The fastest times are the smallest numbers. In
H7:H9, use SMALL on the 5K times in column C, with the place numbers inG7:G9as k.A podium needs names. In
I2, find the distance fromH2inB2:B13and return the runner from column A:=INDEX($A$2:$A$13, MATCH(H2, $B$2:$B$13, 0)). Fill it down toI4.
Remember
=RANK(x, $B$2:$B$13)ranks the largest first; add, 1to rank the smallest first.- Lock the list with
$so every row is compared with the same values. LARGE(list, k)andSMALL(list, k)return the k-th largest or smallest. Keep k in a cell to build a top-N table.- Pair LARGE or SMALL with INDEX/MATCH or XLOOKUP to put a name to the number.
Previous: Weeks, months and quarters in reports · Next: Mean, median and mode