SUMIFS

Vrátí součet hodnot buněk z oblasti, která splňuje více kritérií z více oblastí.

Syntaxe

SUMIFS(Func_Range; Range1; Criterion1 [ ; Range2; Criterion2 [;...]]))

Func_Range – required argument. It 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.

Criterion1 – required argument. 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).

Range2 – Optional. Range2 and all the following mean the same as Range1.

Criterion2 – Optional. Criterion2 and all the following mean the same as Criterion1.

Ikona upozornění

Func_Range and Range1, Range2... must have the same size, otherwise the function returns err:502 - Invalid argument.


Ikona poznámky

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.


The function can have up to 255 arguments, meaning that you can specify 127 criteria ranges and criteria for them.

Ikona upozornění

If a cell contains TRUE, it is treated as 1, if a cell contains FALSE – as 0 (zero).


Ikona poznámky

Tato funkce je součástí standardu Open Document Format for Office Applications (OpenDocument) verze 1.2 (ISO/IEC 26300:2-2015).


Příklady

Uvažujme následující tabulku

A

B

C

1

Název zboží

Prodeje

Tržby

2

nůžky

20

65

3

nůž

35

85

4

poznámkový blok

20

190

5

známka

17

180

6

nůž na papír

ne

ne


Ikona upozornění

In all examples below, ranges for calculation contain the row #6, which is ignored because it contains text.


Základní použití

=SUMIFS(B2:B6;B2:B6;">=20")

Vypočítá součet hodnot z oblasti B2:B6, které jsou větší nebo rovny 20. Vrátí 75, protože pátý řádek kritérium nesplňuje.

=SUMIFS(C2:C6;B2:B6;">=20";C2:C6;">70")

Vypočítá součet hodnot z oblasti C2:C6, které jsou větší než 70 a odpovídají buňkám oblasti B2:B6 s hodnotami většími nebo rovnými 20. Vrátí 275, protože druhý a pátý řádek aspoň jedno z kritérií nesplňují.

Použití regulárních výrazů a vnořených funkcí

=SUMIFS(C2:C6;B2:B6;">"&MIN(B2:B6);B2:B6;"<"&MAX(B2:B6))

Vypočítá součet hodnot z oblasti C2:C6, které odpovídají všem hodnotám z oblasti B2:B6 kromě jejich minima a maxima. Vrátí 255, protože třetí a pátý řádek aspoň jedno z kritérií nesplňují.

=SUMIFS(C2:C6;A2:A6;"nůž.*";B2:B6;"<"&MAX(B2:B6))

Vypočítá součet hodnot z oblasti C2:C6, které odpovídají všem buňkám z oblasti A2:A6 začínajícím na "nůž" a všem buňkám z oblasti B2:B6 s výjimkou jejich maxima. Vrátí 65, protože všechna kritéria splňuje pouze druhý řádek.

Odkaz na buňku jako kritérium

Potřebujete-li kritérium snadno změnit, můžete jej zadat do samostatné buňky, na kterou odkážete v podmínce funkce SUMIFS. Například výše uvedenou funkci lze přepsat následovně:

=SUMIFS(C2:C6;A2:A6;E2&".*";B2:B6;"<"&MAX(B2:B6))

Pokud E2 = nůž, funkce vrátí 65, protože odkaz na buňku je nahrazen jejím obsahem.

Open file with example: