AVERAGEIFS
Vrátí aritmetický průměr všech buněk oblasti, které splňují více kritérií. Funkce AVERAGEIFS sečte všechny výsledky, které vyhovují daným logickým testům, a součet vydělí počtem vybraných hodnot.
Syntaxe
AVERAGEIFS(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 mean.
Základní použití
=AVERAGEIFS(B2:B6;B2:B6;">=20")
Vypočítá průměr hodnot z oblasti B2:B6, které jsou větší nebo rovny 20. Vrátí 25, protože pátý řádek kritérium nesplňuje.
=AVERAGEIFS(C2:C6;B2:B6;">=20";C2:C6;">70")
Vypočítá průměr 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í 137,5, 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í
=AVERAGEIFS(C2:C6;B2:B6;">"&MIN(B2:B6);B2:B6;"<"&MAX(B2:B6))
Vypočítá průměr hodnot z oblasti C2:C6, které odpovídají všem hodnotám z oblasti B2:B6 kromě jejich minima a maxima. Vrátí 127,5, protože třetí a pátý řádek aspoň jedno z kritérií nesplňují.
=AVERAGEIFS(C2:C6;A2:A6;"nůž.*";B2:B6;"<"&MAX(B2:B6))
Vrátí průměr 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 AVERAGEIFS. Například výše uvedenou funkci lze přepsat následovně:
=AVERAGEIFS(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.