Funkciu DAvg môžete použiť na výpočet priemeru množiny hodnôt v zadanej množine záznamov (doméne). Funkciu DAvg môžete použiť v module Visual Basic for Applications (VBA), v makre, vo výraze dotazu alebo vo vypočítavanom ovládacom prvku.
Funkciu DAvg môžete napríklad použiť v riadku kritérií dotazu select na prepravné náklady, náklady a obmedziť výsledky na tie záznamy, kedy prepravné náklady presahujú priemer. Alebo môžete použiť výraz vrátane funkcie DAvg vo vypočítavanom ovládacom prvku a zobraziť priemernú hodnotu predchádzajúcich objednávok vedľa hodnoty novej objednávky.
Syntax
DAvg(výraz; doména [; kritériá] )
Syntax funkcie DAvg má tieto argumenty:
| Argument | Popis |
|---|---|
| výraz | Povinný argument. Výraz určujúci pole s číselnými údajmi, ktorého hodnoty chcete spriemerovať. Môže to byť reťazcový výraz identifikujúci pole v tabuľke alebo dotaze, alebo to môže byť výraz, ktorý vykoná výpočet s údajmi v danom poli. Do výrazu môžete zahrnúť názov poľa v tabuľke, ovládací prvok vo formulári, konštantu alebo funkciu. Ak výraz obsahuje funkciu, môže byť vstavaná alebo používateľom definovaná, ale nie agregačná funkcia inej domény alebo agregačná funkcia SQL. |
| doména | Povinný argument. Výraz reťazca určujúci množinu záznamov, ktoré vytvárajú doménu. Môže to byť názov tabuľky alebo názov pre dotaz, ktorý nevyžaduje parameter. |
| kritériá | Voliteľný argument. Reťazcový výraz slúžiaci na obmedzenie rozsahu údajov, na ktorých sa vykonáva funkcia DAvg . Kritériá sú napríklad často ekvivalentné klauzule WHERE vo výraze SQL bez slova WHERE. Ak sa vynechá kritérium , funkcia DAvg vyhodnotí výraz voči celej doméne. Každé pole, ktoré je zahrnuté v kritériách , musí byť aj poľom v doméne. V opačnom prípade funkcia DAvg vráti hodnotu Null. |
Poznámky
Záznamy obsahujúce hodnoty Null nie sú zahrnuté vo výpočte priemeru.
Bez ohľadu na to, či funkciu DAvg používate v makre alebo module, vo výraze dotazu alebo vo vypočítavanom ovládacom prvku, argument kritérií je potrebné zostaviť pozorne, aby sa zabezpečilo správne vyhodnotenie.
Funkciu DAvg môžete použiť na zadanie kritérií v riadku kritérií dotazu. Povedzme napríklad, že chcete zobraziť zoznam všetkých produktov, ktoré boli objednané v množstvách vyšších než priemerné množstvo objednávok. Môžete vytvoriť dotaz na tabuľky Objednávky, Podrobnosti objednávky a Produkty a zahrnúť polia Názov produktu a Množstvo pomocou nasledujúceho výrazu v riadku kritérií pod poľom Množstvo:
>DAvg("[Quantity]", "Orders")
Funkciu DAvg môžete použiť aj vo výraze vypočítavaného poľa v dotaze alebo v riadku Aktualizovať do aktualizačného dotazu.
Poznámka
Funkciu DAvg alebo Avg môžete použiť vo výraze vypočítavaného poľa v dotaze na súčty. Ak používate funkciu DAvg , pred zoskupením údajov sa vypočíta priemer hodnôt. Ak používate funkciu Avg , údaje sa zoskupia pred vypočítaním priemeru hodnôt vo výraze poľa.
Funkciu DAvg použite vo vypočítavanom ovládacom prvku v prípade, ak potrebujete určiť kritériá na obmedzenie rozsahu údajov, v ktorom sa má funkcia DAvg použiť. Ak chcete napríklad zobraziť priemerné prepravné náklady pre dodávky do Kalifornie, nastavte vlastnosť textového poľa ControlSource na nasledujúci výraz:
=DAvg("[Freight]", "Orders", "[ShipRegion] = 'CA'")
Ak chcete iba vypočítať priemer všetkých záznamov v doméne, použite funkciu Avg .
Funkciu DAvg môžete tiež použiť v module, makre alebo vo vypočítavanom ovládacom prvku vo formulári, ak sa pole, ktoré potrebujete zobraziť, nenachádza v zdroji záznamov, na ktorom je založený formulár. Predpokladajme napríklad, že máte formulár založený na tabuľke Objednávky a chcete zahrnúť pole Množstvo z tabuľky Podrobnosti objednávky s cieľom zobraziť priemerný počet objednaných položiek konkrétneho zákazníka. Funkciu DAvg môžete použiť na vykonanie tohto výpočtu a zobrazenie údajov vo formulári.
Tipy
- Ak používate funkciu DAvg vo vypočítavanom ovládacom prvku, môžete chcieť umiestniť daný ovládací prvok do hlavičky alebo päty formulára tak, že hodnota tohto ovládacieho prvku sa neprepočítava pri každom prechode na nový záznam.
- Ak je typ údajov poľa, z ktorého je odvodený výraz , číslo, funkcia DAvg vráti typ údajov Double. Ak používate funkciu DAvg vo vypočítavanom ovládacom prvku, zahrňte na zvýšenie výkonu do výrazu funkciu konverzie typu údajov.
- Napriek tomu, že funkciu DAvg môžete použiť na určenie priemeru hodnôt v poli v cudzej tabuľke, môže byť efektívnejšie vytvoriť dotaz obsahujúci všetky polia, ktoré potrebujete, a potom založiť formulár alebo zostavu na danom dotaze.
Poznámka
Neuložené zmeny záznamov v doméne sa pri používaní tejto funkcie nezahrnú. Ak chcete , aby bola funkcia DAvg založená na zmenených hodnotách, je najprv nutné tieto zmeny uložiť tak, že na karte Údaje v časti Záznamy kliknete na položku Uložiť záznam, presuniete zameranie na iný záznam alebo použijete metódu Update.
Príklad
Poznámka
Nasledujúce príklady ukazujú použitie tejto funkcie v module jazyka Visual Basic for Applications (VBA). Ak chcete získať ďalšie informácie o práci s jazykom VBA, vyberte z rozbaľovacieho zoznamu vedľa položky Hľadať možnosť Odkaz pre vývojára a do vyhľadávacieho poľa zadajte nejaké výrazy.
Nasledujúca funkcia vráti priemerné prepravné náklady pre objednávky dodané v daný deň alebo po ňom. Doménou je tabuľka Objednávky. Argument kritériá obmedzuje výslednú množinu záznamov na základe danej krajiny alebo oblasti a dátumu odoslania. Všimnite si, že kľúčové slovo AND je zahrnuté v reťazci na oddelenie viacerých polí v argumente kritérií . Všetky záznamy, ktoré sú súčasťou výpočtu funkcie DAvg, budú mať obidve tieto kritériá.
Public Function AvgFreightCost _
(ByVal strCountryRegion As String, _
ByVal dteShipDate As Date) As Double
AvgFreightCost = DAvg("[Freight]", "Orders", _
"[ShipCountryRegion] = '" & strCountryRegion & _
"'AND [ShippedDate] >= #" & dteShipDate & "#")
End Function
Na zavolanie danej funkcie použite nasledujúci riadok kódu v okne Okamžité:
:AvgFreightCost "UK", #1/1/96#