Ranking lists, such as top salespeople or best products, are a frequent report request.
The top 3 values with LARGE
=LARGE($B$2:$B$100, 1) returns the largest value. Change 1 to 2 and 3 for the second and third largest.
To make it easy to copy down, use =LARGE($B$2:$B$100, ROWS($A$1:A1)).
Bottom values
Use SMALL in the same way: =SMALL($B$2:$B$100, 1) gives the lowest value.
Get the matching names
Once you have the value in D2, look up the name:
=INDEX($A$2:$A$100, MATCH(D2, $B$2:$B$100, 0))
If two people have the same value, this returns the first name for both. In that case use the dynamic approach below.
The modern way: SORT and TAKE
=TAKE(SORT(A2:B100, 2, -1), 3)
SORT puts the table in descending order by column 2, and TAKE keeps the first three rows. This returns names and values together and handles ties. If TAKE is not available, use =INDEX(SORT(A2:B100, 2, -1), SEQUENCE(3), {1,2}).
Top 3 with a condition
Wrap FILTER inside SORT to get the top 3 for one region only.