# How to Sum the Smallest N Values in Excel

Sometimes we may want to sum the first smallest N numbers in a range in Excel. In this article, we will show you the method of “**SUM the Smallest N Numbers**” by a simple formula which consist of **SUMPRODUCT** and **SMALL** functions. **SMALL** can return smallest values based on criteria, **SUMPRODUCT** can sum up these smallest values.

Through a simple instance, we will introduce you the syntax, argument and the usage of **SUMPRODUCT and SMALL **functions. We will let you know how the formula works step by step clearly. After reading the article, you may know that in which situations we can choose **SUMPRODUCT** function to sum data.

Table of Contents

**EXAMPLE**

In the ‘Value’ column, there are 10 values from ‘1’ to ‘10’ in improper order. Now we want to sum the smallest 4 values from this list, how can we get the correct result?

Actually, we can sort these numbers from smallest to largest firstly by ‘**Sort A-Z**’ in excel.

Click ‘**Data**’ tab, under ‘**Sort & Filter**’ section click ‘**Sort Smallest to Largest**’ icon.

Then you can find numbers are ordered properly.

Then you can enter **SUM **function in B2 and select the first four numbers ->cell reference A2:A5 in the list.

Then you can get the sum of the smallest four values.

In this way, we can get result correctly. But we can also get sum conveniently and correctly by just enter a formula. As we want to sum the smallest four numbers from range A2:A11, we can find the smallest N number or numbers by **SMALL **function actually, and then use **SUMPRODUCT **function to sum array directly.

**FORMULA – APPLY SUMPRODUCT FUNCTION**

**Step 1: **In B2, enter the formula

=SUMPRODUCT(SMALL(A2:A11,{1,2,3,4})).

**Step 2: **Press **Enter** after typing the formula.

We can see that this time we also get correct result 10. The formula works correctly.

**FUNCTION INTRODUCTION**

**SUMPRODUCT** function can be seen as **SUM+PRODUCT**.

For **SUMPRODUCT** function, the syntax is:

=SUMPRODUCT(array1,array2,array3, ...)

The values in arrays are multiplied correspondingly, then sum up the products. For example, enter =SUMPRODUCT({1,2,3},{2,3,4}) in any cell, the we can get value 20, it equals to 1*2+2*3+3*4=20. If there is only array in the formula, **SUMPRODUCT** will sum the numbers in the array.

**SUMPRODUCT** function allows entering texts, logical operators and expressions like (product=cap), texts should be enclosed into ().

**SMALL** function can return the Nth smallest value in a range.

For **SMALL** function, the syntax is:

=SMALL(array,k)

If k is a number, it returns the smallest number in the range; if k is an array like {1,2,3}, it returns the smallest three numbers in the range. If k is an array, but the numbers are in inconsecutive sequence for example k={1,2,4}, then **SMALL** function will return the 1^{st}, 2^{nd}, 4^{th} smallest values in the range.

**ARGUMENTS EXPLAINATION**

In this formula **=SUMPRODUCT(SMALL(A2:A11,{1,2,3,4}))**, we applied two functions.

For **SMALL** function, range is **A2:A11**, k is an array **{1,2,3,4}.**

Select range A2:A11 in formula bar, press **F9** to convert cell reference to real values, items in ‘Value’ column are saved in an array.

For **SUMPRODUCT **function, there is only one array, it is the result of formula **SMALL({1;3;5;6;9;10;7;8;4;2},{1,2,3,4})**.

**HOW THIS FORMULA WORKS**

After explaining argument in the formula, the formula is converted to **=SUMPRODUCT(SMALL({1;3;5;6;9;10;7;8;4;2},{1,2,3,4}))** in the formula bar. Now we will show you how the formula works with the two functions.

For SMALL({1;3;5;6;9;10;7;8;4;2},{1,2,3,4}), refer to k value {1,2,3,4}, we find out the smallest 4 values in the array {1;3;5;6;9;10;7;8;4;2}.

Select SMALL({1;3;5;6;9;10;7;8;4;2},{1,2,3,4}) in the formula bar, press **F9**. We can get the result {1,2,3,4}.

Obviously, the final result is 1+2+3+4=10. Select SUMPRODUCT({1,2,3,4}) in the formula bar, press **F9, **10 is displayed in formula bar.

**COMMENTS**

**1**. In this instance, there are only 10 numbers in the range, and we only want to sum the smallest 4 number. If there are a large amount of numbers, and sum the smallest 100 or more numbers in the range, do we need to enter {1,2,3,4,…,100} in **SMALL** function? Obviously, it is very complex and troublesome. So, we can solve this problem by the help of **ROW** and **INDIRECT**

For example, if we want to sum the smallest 9 numbers in the range, we can enter **=SUMPRODUCT(SMALL(A2:A11,ROW(INDIRECT(“1:9”))))** in B2. Then we can get correct value 45.

In this case, INDIRECT function can return a valid reference based on entered texts. With the help of **ROW**, ROW(INDIRECT(“1:9”)) can convert “1:9” to {1,2,3,4,5,6,7,8,9}.

**2.** If N number is saved in another cell, we can concentrate inside **INDIRECT** function. Enter **=SUMPRODUCT(SMALL(A2:A11,ROW(INDIRECT(“1:”&B2))))** in C2 this time. See example below:

In this case, when changing the number in B2, result in C2 will be automatically updated. We don’t need to adjust the formula or cell reference.

**3.** In this case we can also use **SUM** function to replace **SUMPRODUCT** function. But **SUMPRODUCT** function can handle arrays directly without entering **Ctrl + Shift + Enter**, so we often apply **SUMPRODUCT** function in similar situations.

**SUMMARY**

**SUMPRODUCT**function can handle multiple arrays, and it sum up the products. And allows user defined range, wildcards, logical operators, expressions.**SMALL**function can return the Nth smallest value in a range.**ROW(INDIRECT(“1:N”))**can return a set of numeric numbers in an array.- If N is in another cell, use “&” to concentrate them inside
**INDIRECT**, for example**ROW(INDIRECT(“1:”&B2))**.

## Related Functions

- Excel SUMPRODUCT function

The Excel SUMPRODUCT function multiplies corresponding components in the given one or more arrays or ranges, and returns the sum of those products.The syntax of the SUMPRODUCT function is as below:**=**SUMPRODUCT (array1,[array2],…)… - Excel INDIRECT function

The Excel INDIRECT function returns the cell reference based on a text string, such as: type the text string “A2” in B1 cell, it just a text string, so you can use INDIRECT function to convert text string as cell reference…. - Excel ROW function

The Excel ROW function returns the row number of a cell reference.The ROW function is a build-in function in Microsoft Excel and it is categorized as a Lookup and Reference Function.The syntax of the ROW function is as below:= ROW ([reference])…. - Excel SMALL function

The Excel SMALL function returns the smallest numeric value from the numbers that you provided. Or returns the smallest value in the array.The syntax of the SMALL function is as below:=SMALL(array,nth) … - Excel SUM function

The Excel SUM function will adds all numbers in a range of cells and returns the sum of these values. You can add individual values, cell references or ranges in excel.The syntax of the SUM function is as below:= SUM(number1,[number2],…)