Pomoću funkcije DAvg možete izračunati prosjek skupa vrijednosti u navedenom skupu zapisa ( domena ). Funkciju DAvg koristite u modulu programa Visual Basic for Applications (VBA), u makronaredba, izrazu upita ili u izračunata kontrola.
Možete, primjerice, koristiti funkciju DAvg u retku kriterija upita odabiranja za trošak vozarina da biste ograničili rezultate na zapise u kojima trošak vozarina premašuje prosjek. Ili možete koristiti izraz koji uključuje funkciju DAvg u kontroli izračuna i prikazati prosječnu vrijednost prethodnih narudžbi pokraj vrijednosti novog redoslijeda.
Sintaksa
DAvg ( izraz , domena [, kriteriji] )
Sintaksa funkcije DAvg sadrži ove argumente:
Argument |
Opis |
izraz |
Obavezno. Izraz koji određuje polje koje sadrži numeričke podatke koje želite izračunati kao prosjek. To može biti nizovni izraz koji određuje polje u tablici ili upitu ili izraz koji izvodi izračun na podacima u tom polju. Izrazomr možete uvrstiti naziv polja u tablicu, kontrolu na obrascu, konstantu ili funkciju. Ako izraz sadrži funkciju, ona može biti ili ugrađena ili korisnički definirana, no ne može biti neka druga domenska ili SQL funkcija zbrajanja. |
domena |
Obavezno. Niz koji određuje skup zapisa koji čine domenu. To može biti naziv tablice ili upita za upit koji ne zahtijeva parametar. |
kriteriji |
Neobavezno. Nizovni izraz koji se koristi za ograničavanje raspona podataka na kojima se izvodi funkcija D Avg. Na primjer, kriteriji su često ekvivalentni uvjetu WHERE u SQL izrazu, bez riječi WHERE. Ako izostavite kriterije, funkcija DAvg vrednuje izraz u odnosu na cijelu domenu. Svako polje koje je uključeno u criteria također mora biti polje u domeni; u suprotnom funkcija DAvg vraća vrijednost Null. |
Napomene
Zapisi koji sadrže vrijednosti Null nisu uključeni u izračun prosjeka.
Bez obzira na to koristite li funkciju DAvg u makronaredbi ili modulu, u izrazu upita ili u kontroli izračuna , argument kriterija morate pažljivo konstruirati da biste bili sigurni da će se ispravno procijeniti.
Pomoću funkcije DAvg možete odrediti kriterije u retku Kriteriji upita. Pretpostavimo, primjerice, da želite prikazati popis svih proizvoda naručenih u količinama iznad prosječne količine narudžbi. Možete stvoriti upit u tablicama Narudžbe, Detalji narudžbe i Proizvodi te uvrstiti polje Naziv proizvoda i Polje Količina, a ispod polja Količina u retku Kriteriji sljedeći izraz:
>DAvg("[Quantity]", "Orders")
Funkciju DAvg možete koristiti i unutar izraza izračunatog polja u upitu ili u retku Ažuriraj u upit za ažuriranje.
Napomena: Funkciju DAvg ili Avg možete koristiti u izrazu izračunatog polja u upit ukupnih zbrojeva. Ako koristite funkciju DAvg , vrijednosti se izračunavaju u prosjeku prije grupiranje podataka. Ako koristite funkciju Avg , podaci se grupiraju prije prosječne vrijednosti u izrazu polja.
Funkciju DAvg koristite u kontroli izračuna kada morate navesti kriterije da biste ograničili raspon podataka na kojima se izvodi funkcija DAvg . Da biste, primjerice, prikazali prosječni trošak vozarina za pošiljke poslane u Kaliforniju, postavite svojstvo ControlSource tekstnog okvira na sljedeći izraz:
=DAvg("[Freight]", "Orders", "[ShipRegion] = 'CA'")
Ako jednostavno želite prosjek svih zapisa u domeni, koristite funkciju Avg .
Funkciju DAvg možete koristiti u modulu ili makronaredbi ili u kontroli izračuna na obrascu ako se polje koje morate prikazati ne nalazi u izvoru zapisa na kojem se obrazac temelji. Pretpostavimo, primjerice, da imate obrazac koji se temelji na tablici Narudžbe i želite uvrstiti polje Količina iz tablice Detalji narudžbe da biste prikazali prosječan broj stavki koje je naručio određeni kupac. Pomoću funkcije DAvg možete izvršiti taj izračun i prikazati podatke na obrascu.
Savjeti
-
Ako funkciju DAvg koristite u kontroli izračuna, bilo bi dobro da kontrolu postavite na zaglavlje ili podnožje obrasca tako da se vrijednost za tu kontrolu ne izračunava svaki put kada se pomaknete na novi zapis.
-
Ako je vrsta podataka polja iz kojeg je izraz izveden broj, funkcija DAvg vraća dvostruku vrstu podataka. Ako funkciju DAvg koristite u kontroli izračuna, u izraz uključite funkciju pretvorbe vrste podataka da biste poboljšali performanse.
-
Iako pomoću funkcije DAvg možete odrediti prosjek vrijednosti u polju u vanjska tablica, možda je učinkovitije stvoriti upit koji sadrži sva potrebna polja, a zatim obrazac ili izvješće utemeljiti na tom upitu.
Napomena: Funkcija neće obuhvatiti nespremljene promjene zapisa u argumentu domena. Ako želite da se funkcija DAvg temelji na promijenjenim vrijednostima, najprije morate spremiti promjene klikom na Spremi zapis u odjeljku Zapisi na kartici Podaci, premještanjem fokusa na drugi zapis ili pomoću metode ažuriranja.
Primjer
Napomena: Primjeri koji slijede prikazuju korištenje te funkcije u modulu jezika Visual Basic for Applications (VBA). Da biste pronašli dodatne informacije o radu s VBA-om, na padajućem popisu uz stavku Traži odaberite stavku Referenca za razvojne inženjere pa unesite jedan ili više izraza u okvir pretraživanja.
Sljedeća funkcija vraća prosječni trošak vozarina za narudžbe otpremljene na određeni datum ili nakon navedenog datuma. Domena je tablica Narudžbe. Argument kriteriji ograničava rezultirajući skup zapisa na temelju određene države/regije i datuma isporuke. Imajte na umu da je ključna riječ AND uvrštena u niz da bi se razdvojili višestruka polja u argumentu kriteriji. Svi zapisi uključeni u izračun funkcije DAvg imaju oba kriterija.
Public Function AvgFreightCost _
(ByVal strCountryRegion As String, _ ByVal dteShipDate As Date) As Double AvgFreightCost = DAvg("[Freight]", "Orders", _ "[ShipCountryRegion] = '" & strCountryRegion & _ "'AND [ShippedDate] >= #" & dteShipDate & "#") End Function
Za pozivanje funkcije koristite sljedeći redak koda u izravnom prozoru:
:AvgFreightCost "UK", #1/1/96#