Applies ToAccess for Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Du kan bruke DAvg-funksjonen til å beregne gjennomsnittet av et sett med verdier i et angitt sett med poster (en domene ). Bruk DAvg-funksjonen i en Visual Basic for Applications (VBA)-modul, i en makro, i et spørringsuttrykk eller i en beregnet kontroll.

Du kan for eksempel bruke DAvg-funksjonen i vilkårsraden i en utvalgsspørring på fraktkostnader for å begrense resultatene til de postene der fraktkostnaden overskrider gjennomsnittet. Eller du kan bruke et uttrykk, inkludert DAvg-funksjonen i en beregnet kontroll, og vise gjennomsnittsverdien for tidligere ordrer ved siden av verdien i en ny rekkefølge.

Syntaks

DAvg ( uttr ; domene [, vilkår] )

Syntaksen for funksjonen DAvg har følgende argumenter:

Argument

Beskrivelse

uttr

Obligatorisk. Et uttrykk som identifiserer feltet som inneholder de numeriske dataene du vil beregne gjennomsnittet for. Det kan være et strenguttrykk som identifiserer et felt i en tabell eller spørring, eller det kan være et uttrykk som utfører beregninger på data i det feltet. I expr kan du inkludere navnet på et felt i en tabell, en kontroll i et skjema, en konstant eller en funksjon. Hvis uttr inneholder en funksjon, kan den være innebygd eller brukerdefinert, men ikke en annen domenemengde- eller SQL-mengdefunksjon.

domene

Obligatorisk. En streng som identifiserer settet med poster som utgjør domenet. Det kan være enten et tabellnavn eller et spørringsnavn for en spørring som ikke krever en parameter.

vilkår

Valgfritt. Et strenguttrykk som brukes til å begrense dataområdet som DAvg-funksjonen utføres på. Vilkår tilsvarer for eksempel ofte WHERE-setningen i et SQL-uttrykk, uten ordet WHERE. Hvis vilkår utelates, evaluerer DAvg-funksjonenuttr mot hele domenet. Alle felt som er inkludert i criteria , må også være et felt i domenet. Ellers returnerer DAvg-funksjonen en Null.

Kommentarer

Poster som inneholder nullverdier , er ikke inkludert i beregningen av gjennomsnittet.

Enten du bruker DAvg-funksjonen i en makro eller modul, i et spørringsuttrykk eller i en beregnet kontroll, må du konstruere vilkårsargumentet nøye for å sikre at det evalueres riktig.

Du kan bruke DAvg-funksjonen til å angi vilkår i Vilkår-raden i en spørring. Anta for eksempel at du vil vise en liste over alle produkter bestilt i antall over gjennomsnittlig ordreantall. Du kan opprette en spørring i tabellene Ordrer, Ordredetaljer og Produkter, og inkludere Produktnavn-feltet og Antall-feltet, med følgende uttrykk i Vilkår-raden under Antall-feltet:

>DAvg("[Quantity]", "Orders")

Du kan også bruke DAvg-funksjonen i et beregnet feltuttrykk i en spørring, eller i Oppdater til-raden i en opppdateringsspørring.

Obs!: Du kan bruke funksjonen DAvg eller Gjennomsnitt i et beregnet feltuttrykk i en totalverdispørring. Hvis du bruker DAvg-funksjonen , beregnes gjennomsnittet av verdiene før dataene grupperes. Hvis du bruker Gjennomsnitt-funksjonen , grupperes dataene før verdiene i feltuttrykket beregnes i gjennomsnitt.

Bruk DAvg-funksjonen i en beregnet kontroll når du må angi vilkår for å begrense dataområdet som DAvg-funksjonen utføres på. Hvis du for eksempel vil vise den gjennomsnittlige fraktkostnaden for forsendelser som sendes til California, angir du controlsource-egenskapen for en tekstboks til følgende uttrykk:

=DAvg("[Freight]", "Orders", "[ShipRegion] = 'CA'")

Hvis du bare vil beregne gjennomsnitt for alle postene i domenet, bruker du Gjennomsnitt-funksjonen .

Du kan bruke DAvg-funksjonen i en modul eller makro eller i en beregnet kontroll i et skjema hvis et felt du trenger å vise, ikke er i postkilden som skjemaet er basert på. Anta for eksempel at du har et skjema basert på Ordrer-tabellen, og at du vil inkludere Antall-feltet fra Ordredetaljer-tabellen for å vise gjennomsnittlig antall varer bestilt av en bestemt kunde. Du kan bruke DAvg-funksjonen til å utføre denne beregningen og vise dataene i skjemaet.

Tips!

  • Hvis du bruker DAvg-funksjonen i en beregnet kontroll, kan det hende du vil plassere kontrollen på toppteksten eller bunnteksten i skjemaet, slik at verdien for denne kontrollen ikke beregnes på nytt hver gang du flytter til en ny post.

  • Hvis datatypen for feltet som uttr er avledet fra, er et tall, returnerer DAvg-funksjonen en dobbel datatype. Hvis du bruker DAvg-funksjonen i en beregnet kontroll, inkluderer du en datatypekonverteringsfunksjon i uttrykket for å forbedre ytelsen.

  • Selv om du kan bruke DAvg-funksjonen til å bestemme gjennomsnittet av verdiene i et felt i en sekundærtabell, kan det være mer effektivt å opprette en spørring som inneholder alle feltene du trenger, og deretter basere skjemaet eller rapporten på den spørringen.

Obs!: Ulagrede endringer til poster i domene er ikke inkludert når du bruker denne funksjonen. Hvis du vil at DAvg-funksjonen skal være basert på de endrede verdiene, må du først lagre endringene ved å klikke Lagre post under PosterData-fanen , flytte fokus til en annen post eller ved hjelp av Oppdater-metoden .

Eksempel

Obs!: I eksemplene nedenfor vises bruken av denne funksjonen i en VBA-modul (Visual Basic for Applications). Hvis du vil ha mer informasjon om hvordan du arbeider med VBA, velger du Utviklerreferanse fra rullegardinlisten ved siden av Søk og skriver inn ett eller flere søkeord i søkeboksen.

Følgende funksjon returnerer den gjennomsnittlige fraktkostnaden for ordrer sendt på eller etter en gitt dato. Domenet er en bestillingstabell. Vilkårsargumentet begrenser det resulterende settet med poster basert på angitt land/område og forsendelsesdato. Vær oppmerksom på at nøkkelordet AND er inkludert i strengen for å skille flere felt i vilkårsargumentet . Alle poster som er inkludert i beregningen av DAvg-funksjonen , har begge disse kriteriene.

Public Function AvgFreightCost _    (ByVal strCountryRegion As String, _     ByVal dteShipDate As Date) As Double    AvgFreightCost = DAvg("[Freight]", "Orders", _        "[ShipCountryRegion] = '" & strCountryRegion & _        "'AND [ShippedDate] >= #" & dteShipDate & "#")End Function

Hvis du vil kalle opp funksjonen, bruker du følgende kodelinje i øyeblikksvinduet:

:AvgFreightCost "UK", #1/1/96#

Trenger du mer hjelp?

Vil du ha flere alternativer?

Utforsk abonnementsfordeler, bla gjennom opplæringskurs, finn ut hvordan du sikrer enheten og mer.

Fellesskap hjelper deg med å stille og svare på spørsmål, gi tilbakemelding og høre fra eksperter med stor kunnskap.