A DAvg függvénnyel kiszámíthatja egy adott rekordhalmaz (tartomány) értékeinek átlagát. Használja a DAvg függvényt egy Visual Basic for Applications (VBA) modulban, makróban, lekérdezési kifejezésben vagy számított vezérlőelemben.
A DAvg függvény használható például egy szállítási költségre vonatkozó választó lekérdezés egy kritériumsorában arra, hogy azokra a rekordokra szűkítse le az eredményt, amelyekben a szállítási költség meghaladja az átlagot. Vagy használhat egy a DAvg függvényt tartalmazó kifejezést számított vezérlőelemben, és az új rendelés értéke mellett megjelenítheti az előző rendelések átlagos értékét.
Szintaxis
DAvg(kifejezés; tartomány [, kritérium] )
A DSum függvény argumentumai a következők:
| Argumentum | Leírás: |
|---|---|
| kif | Kötelező. Olyan kifejezés, amely megadja az átlagolni kívánt numerikus adatot tartalmazó mezőt. Ez lehet egy tábla vagy lekérdezés egy mezőjét azonosító sztringkifejezés, vagy egy olyan kifejezés, amely számítást végez az adott mező adatain. A kifejezésben megadhatja egy mező nevét egy táblában, egy űrlap vezérlőelemét, egy állandót vagy egy függvényt. Ha a kifejezés tartalmaz egy függvényt, az lehet beépített vagy felhasználó által definiált, de nem egy másik tartomány-összesítő vagy SQL összesítő függvény. |
| tartomány | Kötelező. Olyan karakterlánc-kifejezés, amely meghatározza a tartományt alkotó rekordok készletét. Lehet táblanév vagy olyan lekérdezés neve, amelyhez nem szükséges paramétert megadni. |
| kritérium | Nem kötelező. A DAvg függvény végrehajtásához használt adattartomány korlátozására szolgáló karakterlánc-kifejezés. A feltételek például gyakran egyenértékűek az SQL-kifejezések WHERE záradékával, a WHERE szó nélkül. Ha a feltétel nincs megadva, a DAvg függvény a teljes tartományra kiértékeli a kifejezés argumentumot. A feltételekben szereplő mezőknek tartománybeli mezőnek is kell lenniük; ellenkező esetben a DAvg függvény null értéket ad vissza. |
Megjegyzés
Az átlagba nem számítanak be a Null értékű rekordok.
Függetlenül attól, hogy a DAvg függvényt makróban vagy modulban, lekérdezési kifejezésben vagy számított vezérlőelemben használja, gondosan kell összeállítania a feltételargumentumot, hogy biztosan helyesen értékelje ki.
A DAvg függvény például használható egy lekérdezés Kritérium sorában lévő feltételek megadására. Tegyük fel, hogy meg szeretné tekinteni azoknak a termékeknek a listáját, amelyekből az átlagos rendelési mennyiségnél nagyobb mennyiségben rendeltek. Létrehozhat egy lekérdezést a Rendelések, a Rendelés részletei és a Termékek táblára, és beillesztheti a Terméknév és a Mennyiség mezőt úgy, hogy az alábbi kifejezést írja a Kritérium sorba a Mennyiség mező alatt:
>DAvg("[Quantity]", "Orders")
A DAvg függvényt egy számított mező kifejezésében is használhatja egy lekérdezésben, vagy egy frissítő lekérdezés Frissítés sorában.
Megjegyzés
Egy összegző lekérdezésben használhatja a DAvg vagy az Avg függvényt egy számított mezőkifejezésben. Ha a DAvg függvényt használja, akkor az értékek átlagának kiszámítása még az adatok csoportosítása előtt megtörténik. Ha az Avg függvényt használja, akkor az adatok csoportosítása megy végbe először, és ezután következik a mezőkifejezések átlagának kiszámítása.
Egy számított vezérlőelemben akkor használja a DAvg függvényt, ha meg kell adnia a kritérium argumentumot annak az adattartománynak a korlátozására, amelyre alkalmazni szeretné a DAvg függvényt. Ha például meg szeretné jeleníteni a Pest megyei rendelések átlagos szállítási díját, állítsa a szövegmező Mező vagy kifejezés tulajdonságát a következő kifejezésre:
=DAvg("[Freight]", "Orders", "[ShipRegion] = 'CA'")
Ha egyszerűen csak átlagolni szeretné a tartomány összes rekordját, használja az Átlag függvényt .
Használhatja az DAvg függvényt egy modulban vagy makróban vagy űrlapon lévő számított vezérlőelemben, ha a megjelenítendő mező nem abban a rekordforrásban van, amelyen az űrlap alapul. Tegyük fel, hogy van egy űrlapja, amely a Rendelések táblán alapul, és szeretné belevenni a Rendelések részletei tábla Mennyiség mezőjét azért, hogy megjelenítse egy adott vásárló által rendelt tételek átlagos számát. A számításra és az adatoknak az űrlapon való megjelenítésére használhatja a DAvg függvényt.
Tippek
- Ha számított vezérlőelemben használja a DAvg függvényt, akkor érdemes a vezérlőelemet az űrlapfejre vagy az űrlaplábra helyezni annak érdekében, hogy ne számítsa ki a rendszer a vezérlőelem értékét minden alkalommal, amikor új rekordra lép.
- Ha annak a mezőnek az adattípusa, amelyből a kifejezés származik, szám, a DAvg függvény dupla adattípust ad vissza. Ha számított vezérlőelemben használja a DAvg függvényt, a hatékonyság javítása érdekében helyezzen adattípus-konverziós függvényt a kifejezésbe.
- Bár a DAvg függvénnyel meghatározhatja egy idegen tábla mezőinek átlagát, hatékonyabb lehet olyan lekérdezést létrehozni, amely az összes szükséges mezőt tartalmazza, majd az űrlapot vagy jelentést erre a lekérdezésre alapozza.
Megjegyzés
A tartomány rekordjainak nem mentett módosításai nem szerepelnek a függvény használatakor. Ha azt szeretné, hogy a DAvg függvény a módosított értékeken alapuljon, először mentenie kell a módosításokat az Adatok lap Rekordok csoportjában a Rekord mentése gombra kattintva, a fókusz másik rekordra való áthelyezésével vagy az Update metódussal.
Példa
Megjegyzés
A következő példák egy Visual Basic for Applications (VBA) modulban mutatják be a függvény használatát. A VBA használatáról a Keresés elem mellett található legördülő listából a fejlesztői forrásokat választva, majd egy vagy több keresőszót megadva kaphat további tájékoztatást.
Az alábbi függvény azoknak a rendeléseknek az átlagos szállítási költségét számítja ki, amelyeket egy adott napon vagy azután szállítottak ki. A tartomány a Rendelések táblának felel meg. A kritérium argumentum korlátozza az eredményként kapott rekordhalmazt az adott ország/régió és szállítási dátum alapján. Vegye figyelembe, hogy a sztring tartalmazza az AND kulcsszót a feltételargumentum több mezőjének elválasztásához. A DAvg függvényt tehát azokra a rekordokra alkalmazza a program, amelyekre mindkét feltétel teljesül.
Public Function AvgFreightCost _
(ByVal strCountryRegion As String, _
ByVal dteShipDate As Date) As Double
AvgFreightCost = DAvg("[Freight]", "Orders", _
"[ShipCountryRegion] = '" & strCountryRegion & _
"'AND [ShippedDate] >= #" & dteShipDate & "#")
End Function
A függvény meghívására a következő kódsort használja az Immediate ablakban:
:AvgFreightCost "UK", #1/1/96#