AVERAGEIFS
Funkce AVERAGEIFS vrátí aritmetický průměr buněk v dané množině, pokud jedna či více množin splňuje jednu či více přiřazených podmínek.
AVERAGEIFS(průměr-hodnot; test-hodnot; podmínka; test-hodnot…; podmínka…)
průměr-hodnot: Sbírka hodnot, které mají být brány v úvahu při výpočtu průměrné hodnoty. Argument průměr-hodnot je odkazem na jednu sbírku buněk, která smí obsahovat libovolné hodnoty.
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). Podmínka může také místo zástupných znaků obsahovat 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
U každé dvojice argumentů test-hodnot a podmínka se porovnává odpovídající hodnota (hodnota ležící na stejné pozici v poli) s testovací podmínkou. Pokud jsou všechny testovací podmínky splněny, je příslušná hodnota ve sbírce průměr-hodnot zahrnuta do průměru.
Sbírky průměr-hodnot i test-hodnot musí mít stejnou velikost.
Příklady |
---|
Máme následující tabulku: |
A | B | C | D | |
---|---|---|---|---|
1 | Věk | Pohlaví | Ženatý/Vdaná | Plat |
2 | 35 | A | A | 71 000 |
3 | 27 | F | A | 81 000 |
4 | 42 | A | A | 86 000 |
5 | 51 | A | N | 66 000 |
6 | 28 | A | N | 52 000 |
7 | 49 | F | N | 62 000 |
8 | 63 | F | A | 89 000 |
9 | 22 | A | A | 34 000 |
10 | 29 | F | N | 42 000 |
11 | 35 | F | A | 56 000 |
12 | 33 | A | N | 62 000 |
13 | 61 | A | A | 91 000 |
Vzorec =AVERAGEIFS(D2:D13; A2:A13; "<40"; B2:B13; "=M") vrátí hodnotu 54 750, což je průměrný plat mužů (označených ve sloupci B hodnotou M) mladších 40 let. Vzorec =AVERAGEIFS(D2:D13; A2:A13; "<40"; B2:B13; "=M"; C2:C13; "=N") vrátí hodnotu 57 000, což je průměrný plat svobodných mužů (označených ve sloupci C hodnotou N) mladších 40 let. Vzorec =AVERAGEIFS(D2:D13; A2:A13; "<40"; B2:B13; "=M"; C2:C13; "=A") vrátí hodnotu 52 500, což je průměrný plat ženatých mužů (označených ve sloupci C hodnotou A) mladších 40 let. Vzorec =AVERAGEIFS(D2:D13; A2:A13; ">= 40"; B2:B13; "=M"; C2:C13; "=A") vrátí hodnotu 88 500, což je průměrný plat ženatých mužů (označených ve sloupci C hodnotou A), kterým je nejméně 40 let. Můžete také použít operátor ≥. Vzorec =AVERAGEIFS(D2:D13; A2:A13; "<40"; B2:B13; "=Ž") vrátí přibližně 59 667, což je průměrný plat žen (označených ve sloupci B hodnotou Ž) mladších 40 let. Vzorec =AVERAGEIFS(D2:D13; A2:A13; "<>35"; C2:C13; "=N") vrátí 56 800, což je průměrný plat nesezdaných osob, kterým není 35 let. Můžete také použít operátor ≠. |
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 | katrina@example.com |
5 | 12 | Sára |
Vzorec =AVERAGEIFS(A1:A5; B1:B5; REGEX("([A-Z0-9a-z._%+-]+)@([A-Za-z0-9.-]+\.[A-Za-z]{2,4})"); A1:A5; ">10") vrátí hodnotu 46 – průměr všech 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. |