Summary

To find the n lowest values in a set of data, you can use the SMALL function. This can be combined with INDEX as shown below to retrieve associated values. In the example shown, the formula in F7 is:

=SMALL(bid,E7)

Note: this worksheet has two named ranges: bid (C5:C12), and company (B5:B12), used for convenience and readability.

Generic formula

=SMALL(range,n)

Explanation 

The small function can retrieve the smallest values from data based on rank. For example:

=SMALL(range,1) // smallest
=SMALL(range,2) // 2nd smallest
=SMALL(range,3) // 3rd smallest

In this case, the rank simply comes from column E.

Retrieve associated values

To retrieve the name of the company associated with smallest bids, we use INDEX and MATCH. The formula in G7 is:

=INDEX(company,MATCH(F7,bid,0))

Here, the value in column F is used as the lookup value inside MATCH, with the named range bid (C5:C12) for lookup_array, and match type set to zero to force exact match. MATCH then returns the location of the value to INDEX as a row number. INDEX then retrieves the corresponding value from the named range company (B5:B12).

The all-in-one formula to get company name in one step would look like this:

=INDEX(company,MATCH(SMALL(bid,E7),bid,0))

Note: if your values contain duplicates you may get ties when you try to rank. You can use a formula like this to break times.

Dave Bruns Profile Picture

AuthorMicrosoft Most Valuable Professional Award

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.