Funktionen DAvg

Du kan bruge funktionen DAvg til at beregne gennemsnittet af et sæt af værdier i et bestemt sæt poster (et domæne). Brug funktionerne DAvg i et VBA-modul (Visual Basic for Applications), i en makro, i et forespørgselsudtryk eller i et beregnet kontrolelement.

Du kan f.eks. bruge funktionen DAvg i kriterierækken i en udvælgelsesforespørgsel på fragtomkostninger for at begrænse resultaterne til de poster, hvor fragtomkostningerne overstiger gennemsnittet. Eller du kan bruge et udtryk, der indeholder funktionen DAvg, i et beregnet kontrolelement og vise den gennemsnitlige værdi af tidligere ordrer ud for den nye ordres værdi.

Syntaks

DAvg ( udtryk , domæne [, kriterier] )

Syntaksen for funktionen DAvg har disse argumenter:

Argument

Beskrivelse

udtryk

Påkrævet. Et udtryk, der identificerer det felt, der indeholder de numeriske data, du vil beregne gennemsnittet af. Det kan være et strengudtryk, der identificerer et felt i en tabel eller forespørgsel, eller det kan være et udtryk, der udfører en beregning af data i det pågældende felt. I udtryk kan du medtage navnet på et felt i en tabel, et kontrolelement i en formular, en konstant eller en funktion. Hvis udtryk indeholder en funktion, kan den enten være indbygget eller brugerdefineret, men det kan ikke være en anden domæneaggregeringsfunktion eller en SQL-aggregeringsfunktion.

domæne

Påkrævet. Et strengudtryk, der identificerer det sæt af poster, der udgør domænet. Det kan være et tabelnavn eller et forespørgselsnavn til en forespørgsel, der ikke kræver en parameter.

kriterier

Valgfrit. Et strengudtryk, der bruges til at begrænse det dataområde, hvor funktionen DAvg udføres. Eksempelvis svarer kriterier ofte til WHERE-delsætningen i et SQL-udtryk uden ordet WHERE. Hvis kriterier udelades, evaluerer funktionen DAvgudtryk imod hele domænet. Alle felter, der er inkluderet i kriterier, skal også være felter i domæne. Ellers returnerer funktionen DAvg en Null-værdi.


Bemærkninger

Poster, der indeholder Null-værdier, medtages ikke i beregningen af gennemsnittet.

Uanset om du bruger funktionen DAvg i en makro eller et modul, et i forespørgselsudtryk eller i et beregnet kontrolelement, skal du konstruere argumentet kriterier omhyggeligt for at sikre, at det evalueres korrekt.

Du kan bruge funktionen DAvg til at angive kriterier i rækken Kriterier i en forespørgsel. Lad os antage, at du vil have vist en liste over alle produkter sorteret efter antal over det gennemsnitlige antal i en ordre. Du kan oprette en forespørgsel på tabellerne Ordrer, Ordreoplysninger og Produkter og medtage feltet Produktnavn og feltet Antal, hvor du har følgende udtryk i rækken Kriterier under feltet Antal:

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

Du kan også bruge funktionen DAvg i et beregnet feltudtryk i en forespørgsel eller i rækken Opdater til i en opdater forespørgsel.

Bemærk: Du kan bruge enten funktionen DAvg eller Avg i et beregnet feltudtryk i en totalforespørgsel. Hvis du bruger funktionen DAvg, beregnes gennemsnittet af værdierne, før dataene grupperes. Hvis du bruger funktionen Avg, grupperes dataene, før værdierne i feltudtrykket evalueres.

Brug funktionerne DAvg i et beregnet kontrolelement, når du har brug for at angive kriterier for at begrænse det dataområde, hvor funktionen DAvg udføres. Hvis du f.eks. vil have vist de gennemsnitlige omkostninger til fragt på ordrer, der er blevet sendt til Californien, skal du angive egenskaben Kontrolelementkilde for et tekstfelt til følgende udtryk:

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

Hvis du blot vil beregne gennemsnittet af alle poster i domæne, skal du bruge funktionen Avg.

Du kan bruge funktionen DAvg i et modul eller en makro eller et beregnet kontrolelement i en formular, hvis et felt, du skal vise, ikke er i den postkilde, som formularen er baseret på. Antag f.eks., at du har en formular, der er baseret på tabellen Ordrer, og du vil medtage feltet Antal fra tabellen Ordredetaljer for at vise det gennemsnitlige antal varer sorteret efter en bestemt kunde. Du kan bruge funktionen DAvg til at foretage denne beregning og vise dataene i formularen.

Tip

  • Hvis du bruger funktionen DAvg i et beregnet kontrolelement, kan du placere kontrolelementet i formularens sidehoved eller sidefod, så værdien for dette kontrolelement ikke genberegnes, hver gang du flytter til en ny post.

  • Hvis datatypen for feltet, hvorfra udtryk er afledt, er et tal, returnerer funktionen DAvg en Dobbelt-datatype. Hvis du bruger funktionen DAvg i et beregnet kontrolelement, skal du medtage en funktion til konvertering af datatype i udtrykket for at forbedre ydeevnen.

  • Selvom du kan bruge funktionen DAvg til at bestemme gennemsnittet af værdier i et felt i en fremmed tabel, kan det være mere effektivt at oprette en forespørgsel, der indeholder alle de felter, du skal bruge, og derefter basere din formular eller rapport på den forespørgsel.

Bemærk: Ikke-gemte ændringer i poster i domæne inkluderes ikke, når du bruger denne funktion. Hvis du vil have, at funktionen DAvg skal være baseret på de ændrede værdier, skal du først gemme ændringerne ved at klikke på Gem post under Poster på fanen Data, flytte fokus til en post eller ved hjælp af metoden Opdater.

Eksempel

Bemærk: Følgende eksempler demonstrerer brugen af denne funktion i et VBA-modul (Visual Basic for Applications). Hvis du vil have mere at vide om at arbejde med VBA, skal du vælge Udviklerreference på rullelisten ud for Søg og skrive ét eller flere ord i søgefeltet.

Følgende funktion returnerer de gennemsnitlige fragtomkostninger for ordrer, der er sendt på eller efter en bestemt dato. Domænet er en ordretabel. Argumentet kriterier begrænser sættet af poster i resultatet baseret på det angivne land/område og forsendelsesdatoen. Bemærk, at nøgleordet OG kun er medtaget i strengen for at adskille flere felter i argumentet kriterier. Alle de poster, der medtages i beregningen med funktionen DAvg, har begge disse kriterier.

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

For at kalde funktionen skal du bruge følgende kodelinje i vinduet Brugerudtryk:

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

Udvid dine færdigheder
Gå på opdagelse i kurser
Få nye funktioner først
Bliv Office Insider

Var disse oplysninger nyttige?

Tak for din feedback!

Tak for din feedback! Det lyder, som om det vil kunne hjælpe, hvis du bliver sat i forbindelse med en af vores Office-supportteknikere.

×