Funkci DAvg můžete použít k výpočtu průměru množiny hodnot v zadané sadě záznamů ( Doména ). Funkci DAvg použijte v modulu jazyka Visual Basic for Applications (VBA), v Makro, ve výrazu dotazu nebo v Vypočítaný ovládací prvek.
Funkci DAvg můžete například použít v řádku kritérií výběrového dotazu na přepravní náklady a omezit s ní výsledky na ty záznamy, kde přepravní náklady převyšují průměr. Nebo můžete použít výraz zahrnující funkci DAvg v počítaném ovládacím prvku a zobrazit průměrnou hodnotu předchozích objednávek vedle hodnoty nové objednávky.
Syntaxe
DAvg ( výraz , doména [, kritéria] )
Syntaxe funkce DAvg obsahuje následující argumenty:
Argument |
Popis |
výraz |
Povinný argument. Výraz, který identifikuje pole obsahující číselná data, která chcete zprůměrovat. Může jít buď o Řetězcový výraz, který určuje pole v tabulce nebo dotazu, nebo výraz, jehož prostřednictvím je proveden výpočet s daty daného pole. Do výrazu r můžete zahrnout název pole v tabulce, ovládací prvek ve formuláři, konstantu nebo funkci. Pokud argument výraz obsahuje funkci, může jít o předdefinovanou funkci nebo funkci definovanou uživatelem, ale nikoli o jinou doménovou agregační funkci nebo agregační funkci SQL. |
doména |
Povinný argument. Řetězcový výraz identifikuje sadu záznamů tvořících doménu. Může jít o název tabulky nebo název dotazu, který nevyžaduje parametr. |
kritéria |
Nepovinný argument. Řetězcový výraz, který se používá k omezení rozsahu dat, na kterém se provádí funkce DAvg . Například kritéria jsou často ekvivalentní klauzuli WHERE ve výrazu SQL bez slova WHERE. Pokud jsou kritéria vynechána, funkce DAvg vyhodnotí výraz pro celou doménu. Jakékoli pole, které je součástí criteria , musí být také polem v doméně; V opačném případě funkce DAvg vrátí hodnotu Null. |
Poznámky
Záznamy, které obsahují hodnoty Null, nejsou zahrnuté do výpočtu průměru.
Bez ohledu na to, jestli funkci DAvg použijete v makru, v modulu, ve výrazu dotazu nebo v počítaném ovládacím prvku, je nutné vytvořit argument kritéria pečlivě, aby bylo zajištěno správné vyhodnocení funkce.
Funkci DAvg můžete použít k zadání kritérií v řádku Kritéria v dotazu. Předpokládejme například, že chcete zobrazit seznam všech produktů objednaných v množství nad průměrným množstvím. Mohli byste vytvořit dotaz na tabulky Objednávky, Podrobnosti objednávky a Produkty a zahrnout pole Název produktu a pole Množství s následujícím výrazem v řádku Kritéria pod polem Množství:
>DAvg("[Quantity]", "Orders")
Funkci DAvg můžete použít také v rámci výrazu počítaného pole v dotazu nebo v řádku Aktualizovat do Aktualizační dotaz.
Poznámka: Ve výrazu počítaných polí v Souhrnný dotaz můžete použít funkci DAvg nebo Avg . Pokud použijete funkci DAvg , hodnoty se před seskupením dat zprůměrují. Pokud použijete funkci Avg , data se seskupí před průměrem hodnot ve výrazu pole.
Funkci DAvg použijte v počítaném ovládacím prvku, když potřebujete zadat kritéria k omezení oblasti dat, s kterou bude funkce DAvg provedena. Pokud například chcete zobrazit průměrné přepravní náklady na poslání zboží do Kalifornie, nastavte u vlastnosti .Zdrojovládacíhoprvku textového pole následující výraz:
=DAvg("[Freight]", "Orders", "[ShipRegion] = 'CA'")
Pokud chcete jenom spočítat průměr všech záznamů v doméně, použijte funkci Avg.
Funkci DAvg je možné použít v modulu nebo makru nebo v počítaném ovládacím prvku ve formuláři, pokud se pole, které chcete zobrazit, nenachází ve zdroji záznamů, na kterém je daný formulář založený. Předpokládejme například, že máte formulář založený na tabulce Objednávky a chcete zahrnout pole Množství z tabulky Podrobnosti objednávky, aby se zobrazoval průměrný počet položek objednaných určitým zákazníkem. K provedení tohoto výpočtu a zobrazení dat ve formuláři můžete použít funkci DAvg.
Tipy
-
Pokud použijete funkci DAvg v počítaném ovládacím prvku, můžete umístit ovládací prvek do záhlaví nebo zápatí formuláře, aby se hodnota tohoto ovládacího prvku nepřepočítávala pokaždé, když přejdete na nový záznam.
-
Pokud je datovým typem pole, ze kterého je výraz odvozen, číslo, vrátí funkce DAvg datový typ Double. Pokud v počítaném ovládacím prvku používáte funkci DAvg , zahrňte do výrazu funkci převodu datového typu, aby se zlepšil výkon.
-
I když můžete použít funkci DAvg k určení průměru hodnot v poli v Cizí tabulka, může být efektivnější vytvořit dotaz obsahující všechna pole, která potřebujete, a pak na něm založit formulář nebo sestavu.
Poznámka: Neuložené změny záznamů v argumentu doména nebudou při použití této funkce zahrnuty. Pokud chcete, aby byla funkce DAvg založená na změněných hodnotách, je nutné nejdříve změny uložit kliknutím na Uložit záznam ve skupinovém rámečku Záznamy na kartě Data, přesunutím fokusu na jiný záznam nebo pomocí metody Update.
Příklad
Poznámka: Následující příklady ukazují použití této funkce v modulu VBA (Visual Basic pro Applications). Pokud chcete další informace o práci s modulem VBA, vyberte Referenční informace pro vývojáře, které najdete v rozevíracím seznamu vedle položky Hledat a do vyhledávacího pole napište požadované pojmy.
Následující funkce vrátí průměr přepravních nákladů pro objednávky poslané určený den nebo později. Doménou je tabulka Objednávky. Argument kritéria omezuje sadu výsledků dotazu na záznamy podle zadané země nebo oblasti a data expedice. Všimněte si, že v řetězci je zahrnuté klíčové slovo AND, aby se oddělilo více polí v argumentu kritéria. Všechny záznamy, které jsou součástí výpočtu funkce DAvg, budou mít obě tato kritéria.
Public Function AvgFreightCost _
(ByVal strCountryRegion As String, _ ByVal dteShipDate As Date) As Double AvgFreightCost = DAvg("[Freight]", "Orders", _ "[ShipCountryRegion] = '" & strCountryRegion & _ "'AND [ShippedDate] >= #" & dteShipDate & "#") End Function
Pokud chcete funkci volat, použijte následující řádek kódu v okně Hodnoty:
:AvgFreightCost "UK", #1/1/96#