Funkciju DAvg možete da koristite za izračunavanje proseka skupa vrednosti u navedenom skupu zapisa (domenu). Koristite funkciju DAvg u Visual Basic for Applications (VBA) modulu, u makrou, izrazu upita ili izračunatoj kontroli.
Na primer, možete da koristite funkciju DAvg u redu kriterijuma upita za izdvajanje o troškovima prevoza da biste ograničili rezultate na one zapise u kojima troškovi prevoza premašuju prosek. Ili možete da upotrebite izraz koji uključuje funkciju DAvg u izračunatoj kontroli i prikažete prosečnu vrednost prethodnih porudžbina pored vrednosti nove porudžbine.
Sintaksa
DAvg(izraz, domen [, kriterijumi] )
Sintaksa funkcije DAvg ima sledeće argumente:
| Argument | Opis |
|---|---|
| expr | Obavezno. Izraz koji identifikuje polje koje sadrži numeričke podatke za koje želite da izračunate prosečnu vrednost. Može da bude izraz niske koji identifikuje polje u tabeli ili upitu ili može da bude izraz koji izvršava izračunavanje podataka u tom polju. U izrazu expr možete da uključite ime polja u tabeli, kontrolu u obrascu, konstantu ili funkciju. Ako izraz uključuje funkciju, ona može da bude ugrađena ili korisnički definisana, ali ne može da bude agregatna funkcija drugog domena ili SQL agregatna funkcija. |
| domen | Obavezno. Izraz niske koji identifikuje skup zapisa koji čine domen. Može da bude ime tabele ili ime upita za upit koji ne zahteva parametar. |
| kriterijum | Opcionalno. Izraz niske koji se koristi za ograničavanje opsega podataka na kojem se izvršava funkcija DAvg . Na primer, kriterijumi su često jednaki odredbi WHERE u SQL izrazu, bez reči WHERE. Ako se kriterijumi izostavi, funkcija DAvg procenjuje izraz naspram celog domena. Sva polja uključena u kriterijume takođe moraju da budu polje u domenu; U suprotnom, funkcija DAvg vraća vrednost "Null". |
Napomene
Zapisi koji sadrže vrednosti "Null " nisu uključeni u izračunavanje prosečne vrednosti.
Bilo da koristite funkciju DAvg u makrou ili modulu, u izrazu upita ili u izračunatoj kontroli, morate pažljivo da konstruišete argument kriterijuma da biste se uverili da će biti izračunat ispravno.
Funkciju DAvg možete da koristite da biste naveli kriterijume u redu "Kriterijumi" upita. Na primer, pretpostavimo da želite da prikažete listu svih poručenih proizvoda u količinama većim od prosečne količine za porudžbinu. Možete da kreirate upit u tabelama "Porudžbine", "Detalji porudžbine" i "Proizvodi" i uključite polje "Ime proizvoda" i polje "Količina", sa sledećim izrazom u redu "Kriterijumi" ispod polja "Količina":
>DAvg("[Quantity]", "Orders")
Funkciju DAvg možete da koristite i u okviru izraza izračunatog polja u upitu ili u redu "Ažuriraj na" upita za ažuriranje.
Napomena
Funkciju DAvg ili Avg možete da koristite u izrazu izračunatog polja u upitu zbirova. Ako koristite funkciju DAvg , vrednosti se izračunavaju u proseku pre grupisanja podataka. Ako koristite funkciju Avg , podaci se grupišu pre izračunavanja prosečne vrednosti u izrazu polja.
Koristite funkciju DAvg u izračunatoj kontroli kada treba da navedete kriterijume da biste ograničili opseg podataka na kojem se funkcija DAvg izvršava. Na primer, da biste prikazali prosečnu cenu prevoza za pošiljke poslate u Kaliforniju, postavite svojstvo "Izvor kontrole " okvira za tekst u sledeći izraz:
=DAvg("[Freight]", "Orders", "[ShipRegion] = 'CA'")
Ako jednostavno želite da izračunate prosek svih zapisa u domenu, koristite funkciju Avg .
Funkciju DAvg možete da koristite u modulu ili makrou ili u izračunatoj kontroli u obrascu ako polje koje želite da prikažete nije u izvoru zapisa na kom je obrazac zasnovan. Na primer, pretpostavimo da je obrazac zasnovan na tabeli "Porudžbine" i želite da uključite polje "Količina" iz tabele "Detalji porudžbine" kako biste prikazali prosečan broj stavki koje je naručio određeni klijent. Možete da koristite funkciju DAvg da biste izvršili ovo izračunavanje i prikazali podatke na obrascu.
Saveti
- Ako funkciju DAvg koristite u izračunatoj kontroli, možda ćete želeti da postavite kontrolu u zaglavlje ili podnožje obrasca kako se vrednost za ovu kontrolu ne bi izračunavala ponovo svaki put kada pređete na novi zapis.
- Ako je tip podataka polja iz kojeg je izraz izveden broj, funkcija DAvg daje tip podataka Double. Ako funkciju DAvg koristite u izračunatoj kontroli, uključite funkciju konverzije tipa podataka u izraz da biste poboljšali performanse.
- Iako funkciju DAvg možete koristiti za određivanje prosečne vrednosti u polju sporedne tabele, možda je efikasnije napraviti upit koji sadrži sva potrebna polja, a zatim na tom upitu zasnovati obrazac ili izveštaj.
Napomena
Nesačuvane promene na zapisima u domenu nisu uključene kada koristite ovu funkciju. Ako želite da funkcija DAvg bude zasnovana na izmenjenim vrednostima, prvo morate da sačuvate promene tako što ćete kliknuti na dugme "Sačuvaj zapis " u okviru "Zapisi " na kartici "Podaci ", premeštajući fokus na drugi zapis, ili tako što ćete koristiti metod ažuriranja .
Primer
Napomena
Primeri koji slede pokazuju upotrebu ove funkcije u Visual Basic for Applications (VBA) modulu. Za više informacija o radu sa VBA modulom izaberite stavku Referenca razvojnog programera sa padajuće liste pored stavke Pretraga i unesite termine u polje za pretragu.
Sledeća funkcija daje prosečne troškove prevoza za porudžbine koje se isporučuju datog datuma ili posle njega. Domen je tabela „Porudžbine“. Argument kriterijuma ograničava rezultujući skup zapisa na osnovu date zemlje/regiona i datuma isporuke. Obratite pažnju na to da je ključna reč AND uključena u nisku za razdvajanje više polja u argumentu kriterijumi . Svi zapisi uključeni u izračunavanje funkcije DAvg imaće oba kriterijuma.
Public Function AvgFreightCost _
(ByVal strCountryRegion As String, _
ByVal dteShipDate As Date) As Double
AvgFreightCost = DAvg("[Freight]", "Orders", _
"[ShipCountryRegion] = '" & strCountryRegion & _
"'AND [ShippedDate] >= #" & dteShipDate & "#")
End Function
Da biste pozvali funkciju, koristite sledeću liniju koda u trenutnom prozoru:
:AvgFreightCost "UK", #1/1/96#