Documentation/Calc Functions/SUMIFS
TDF LibreOffice Document Liberation Project Community Blogs Weblate Nextcloud Redmine Ask LibreOffice Donate
Function name:
SUMIFS
Category:
Mathematical
Summary:
Returns the sum of the values of cells in a range that meets multiple criteria in multiple ranges.
Syntax:
SUMIFS(Func_Range; Range 1; Criterion 1[; Range 2; Criterion 2][; … ; [Range 127; Criterion 127]])
Returns:
Returns a real number which is the sum of those ranges meeting their corresponding criteria.
Arguments:
Func_Range is a range of cells, a name of a named range or a label of a column or a row containing values for calculating the sum.
Range 1 is a range of cells, a name of a named range, or a label of a column or a row, to which the corresponding criterion is to be applied.
Criterion 1 is a string expression representing a logical condition or a cell reference to such string expression. The expression can contain text, numbers, regular expressions, or wildcards (if enabled in calculation options).
Range 2 and all the following mean the same as Range 1.
Criterion 2 and all the following mean the same as Criterion 1.
- Func_Range and Range 1, Range 2... must have the same size, otherwise the function returns an error value.
Additional details:
- The search supports wildcards or regular expressions. With regular expressions enabled, you can enter "all.*", for example, to find the first location of "all" followed by any characters. If you want to search for a text that is also a regular expression, you must either precede every character with a "\" character or enclose the text into \Q...\E. You can switch the automatic evaluation of wildcards or regular expression on and off in Tools > Options > LibreOffice Calc > Calculate.
- When using functions where one or more arguments are search criteria strings that represent a regular expression, the first attempt is to convert the string criteria to numbers. For example, ".0" will convert to 0.0 and so on. If successful, the match will not be a regular expression match but a numeric match. However, when switching to a locale where the decimal separator is not the dot makes the regular expression conversion work. To force the evaluation of the regular expression instead of a numeric expression, use some expression that can not be misread as numeric, such as ".[0]" or ".\0" or "(?i).0".
- The logical relation between criteria can be defined as logical AND (conjunction). In other words, if and only if all given criteria are met, a value from the corresponding cell of the given Func_Range is taken into calculation.
- If a cell contains TRUE, it is treated as 1, if a cell contains FALSE – as 0 (zero).
Examples:
Consider the following table
A | B | C | |
---|---|---|---|
1 | Product Name | Sales | Revenue |
2 | pencil | 20 | 65 |
3 | pen | 35 | 85 |
4 | notebook | 20 | 190 |
5 | book | 17 | 180 |
6 | pencil-case | not | not |
In all examples below, ranges for calculation contain row 6, which is ignored because it contains the text.
Simple usage
Formula | Description | Returns |
---|---|---|
=SUMIFS(B2:B6;B2:B6;">=20") | Calculates the sum of values of the range B2:B6 that are greater than or equal to 20. Here the fifth row does not meet the criterion. | 75 |
=SUMIFS(C2:C6;B2:B6;">=20";C2:C6;">70") | Calculates the sum of values of the range C2:C6 that are greater than 70 and correspond to cells of the B2:B6 range with values greater than or equal to 20. Here the second and the fifth rows do not meet at least one criterion. | 275 |
Using regular expressions and nested functions
Formula | Description | Returns |
---|---|---|
=SUMIFS(C2:C6;B2:B6;">"&MIN(B2:B6);B2:B6;"<"&MAX(B2:B6)) | Calculates the sum of values of the range C2:C6 that correspond to all values of the range B2:B6 except its minimum and maximum. Here the third and the fifth rows do not meet at least one criterion. | 255 |
=SUMIFS(C2:C6;A2:A6;"pen.*";B2:B6;"<"&MAX(B2:B6)) | Calculates the sum of values of the range C2:C6 that correspond to all cells of the A2:A6 range starting with "pen" and to all cells of the B2:B6 range except its maximum. Here only second row meets all criteria. | 65 |
Reference to a cell as a criterion
Formula | Description | Returns |
---|---|---|
=SUMIFS(C2:C6;A2:A6;E2&".*";B2:B6;"<"&MAX(B2:B6)) where E2 = pen | If you need to change a criterion easily, you may want to specify it in a separate cell and use a reference to this cell in the condition of the SUMIFS function. Here the link to the cell is substituted with its content. | 65 |
More examples
For more examples, download and view this Calc spreadsheet.
Related LibreOffice functions:
ODF standard:
Equivalent Excel function:
SUMIFS