SUMIFS
Funkce SUMIFS vrátí součet buněk ve sbírce pro testované hodnoty splňující zadané podmínky.
SUMIFS(součet-hodnot, test-hodnot, podmínka, test-hodnot…, podmínka…)
součet-hodnot: Skupina obsahující hodnoty, které mají být sečteny. Sbírka součet-hodnot může obsahovat číselné hodnoty, hodnoty data/času nebo hodnoty trvání.
test-hodnot: Sbírka hodnot, které mají být testovány. Sbírka test-hodnot může obsahovat hodnoty libovolného typu.
podmínka: Výraz, který porovnává nebo testuje hodnoty a jehož výsledkem je logická hodnota PRAVDA nebo NEPRAVDA. Podmínka může obsahovat porovnávací operátory, konstanty, operátor zřetězení & (ampersand), odkazy a zástupné znaky. Zástupné znaky ve výrazu reprezentují jakýkoli jednotlivý znak nebo více znaků. Můžete použít ? (otazník) k zastoupení jednoho znaku, * (hvězdička) k zastoupení více znaků a ~ (vlnovka), která určí, že následující znak se má shodovat (nemá být použit jako zástupný znak). Argument podmínka může místo zástupných znaků obsahovat také funkci REGEX.
test-hodnot…: Umožňuje volitelně přidat více skupin obsahujících hodnoty, které mají být testovány. Za každou skupinou hodnoty test-hodnot musí ihned následovat výraz podmínka. Toto schéma test-hodnot, podmínka lze opakovat podle potřeby.
podmínka…: Je‑li do vzorce přidána volitelná sbírka test-hodnot, musí za ní následovat další výraz podmínka…, jehož výsledkem je logická hodnota PRAVDA nebo NEPRAVDA. Za každou skupinou hodnot test-hodnot musí následovat výraz podmínka. Proto má tato funkce vždy lichý počet argumentů.
Poznámky
S podmínkou budou porovnány buňky a hodnoty odpovídající každému páru hodnot test a podmínka (nacházející se na shodné pozici v rámci skupiny). Pokud budou všechny podmínky splněny, bude do součtu zahrnuta odpovídající buňka nebo hodnota zadaná jako hodnota součet-hodnot.
Všechny skupiny musí mít stejnou velikost.
Příklady |
---|
Máme následující tabulku: |
A | B | C | |
---|---|---|---|
1 | Tuny | Hodnocení | Datum |
2 | 6 | 1 | 10.12.2012 |
3 | 15 | 2 | 10.12.2012 |
4 | 5 | 1 | 13.12.2012 |
5 | 7 | 2 | 13.12.2012 |
6 | 8 | 2 | 14.12.2012 |
7 | 6 | 1 | 15.12.2012 |
8 | 7 | 2 | 15.12.2012 |
9 | 4 | 2 | 16.12.2012 |
10 | 7 | 1 | 16.12.2012 |
11 | 8 | 2 | 16.12.2012 |
12 | 5 | 1 | 17.12.2012 |
13 | 11 | 2 | 20.12.2012 |
Vzorec =SUMIFS(A2:A13; B2:B13; "=1"; C2:C13; ">=13.12.2012"; C2:C13; "<=17.12.2012") vrátí hodnotu 23, tj. množství komodity v tunách, které bylo doručeno mezi 13. a 17. prosincem a ohodnoceno číslem 1. Buňky ve skupině A2:A13 obsahují počet tun k sečtení (součet-hodnot). Buňky ve skupině B2:B13 (test-hodnot) obsahují první hodnotu (hodnocení 1), která má být testována (podmínka). Buňky ve skupině C2:C13 (test-hodnot...) obsahují druhou hodnotu (datum začátku), která má být testována (podmínka...). Ve stejné oblasti je rovněž obsažena třetí hodnota (datum konce), která má být testována. Řádky 4 (5 tun), 7 (6 tun), 10 (7 tun) a 12 (5 tun) splňují všechny podmínky. Součet těchto řádků je 23 tun. Vzorec =SUMIFS(A2:A13; B2:B13; "=2"; C2:C13; ">=13.12.2012"; C2:C13; "<=17.12.2012") vrátí hodnotu 34, tj. množství komodity v tunách, které bylo doručeno mezi 13. a 17. prosincem a ohodnoceno číslem „2“. Vzorec =SUMIFS(A2:A13; B2:B13; "<>2"; C2:C13; ">=10.12.2012", C2:C13, "<=20.12.2012") vrátí hodnotu 29, tj. množství komodity v tunách, které bylo doručeno v libovolném týdnu a které nebylo hodnoceno číslem „2“. |
Příklad použití výrazu REGEX |
---|
Máme následující tabulku: |
A | B | |
---|---|---|
1 | 45 | marina@example.com |
2 | 41 | Áron |
3 | 29 | michael@example.com |
4 | 64 | jake@example.com |
5 | 12 | Sára |
Vzorec =SUMIFS(A1:A5; B1:B5;REGEX("([A-Z0-9a-z._%+-]+)@([A-Za-z0-9.-]+\.[A-Za-z]{2,4})";); A1:A5; ">10") vrátí hodnotu 138 – součet těch hodnot z buněk A1:A5, které jsou větší než 10 a v rozmezí B1:B5 jim odpovídá buňka s e‑mailovou adresou. |