Du kan bruke DSUMMER-funksjonen til å beregne summen av et sett med verdier i et angitt sett av poster (et domene). Bruk DSUMMER-funksjonen i en VBA-modul (Visual Basic for Applications), en makro, et spørreuttrykk eller en beregnet kontroll.
Du kan for eksempel bruke DSUMMER-funksjonen i et beregnet feltuttrykk i en spørring for å beregne totalt salg gjort av en bestemt ansatt over en tidsperiode. Du kan også bruke DSUMMER-funksjonen i en beregnet kontroll for å vise en løpende salgssum for et bestemt produkt.
Syntaks
DSUMMER ( uttr , domene [, vilkår] )
Syntaksen for DSUMMER-funksjonen har disse argumentene:
Argument |
Beskrivelse |
uttr |
Obligatorisk. Et uttrykk som identifiserer det numeriske feltet med verdiene du vil summere. 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 dette feltet. I uttr kan du ta med navnet på et felt i en tabell, en kontroll på 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 der DSUMMER-funksjonen utføres. For eksempel tilsvarer vilkår ofte WHERE-setningen i et SQL-uttrykk uten ordet HVOR. Hvis vilkår er utelatt, evaluerer DSUMMER-funksjonen uttr mot hele domenet. Alle felter som er inkludert i vilkår, må også være et felt i domene, ellers returnerer DSUMMER-funksjonen en Null. |
Kommentarer
Hvis ingen poster oppfyller vilkår-argumentet, eller hvis domenet ikke inneholder noen poster, returnerer DSUMMER-funksjonen en Null.
Enten du bruker DSUMMER-funksjonen i en makro, en modul, et spørreuttrykk eller en beregnet kontroll, må du konstruere vilkår-argumentet forsiktig for å sikre at det evalueres riktig.
Du kan bruke DSUMMER-funksjonen til å angi vilkår i Vilkår-raden i en spørring, i et beregnet felt i et spørreuttrykk eller i Oppdater til-raden i en opppdateringsspørring.
Obs!: Du kan bruke enten DSUMMER- eller Summer-funksjonen i et beregnet feltuttrykk i en totalverdispørring. Hvis du bruker DSUMMER-funksjonen, beregnes verdiene før dataene er gruppert. Hvis du bruker Summer-funksjonen, grupperes dataene før verdier i feltuttrykket evalueres.
Du vil kanskje bruke DSUMMER-funksjonen når du har behov for å vise summen av et sett med verdier fra et felt som ikke er i postkilden for skjemaet eller rapporten. Anta for eksempel at du har et skjema som viser informasjon om et bestemt produkt. Du kan bruke DSUMMER-funksjonen til å vedlikeholde en løpende sum for salg av dette produktet i en beregnet kontroll.
Tips!
Hvis du trenger å vedlikeholde en løpende sum i en kontroll i en rapport, kan du bruke LøpendeSum-egenskapen for denne kontrollen hvis feltet den er basert på, er inkludert i postkilden for rapporten. Bruk DSUMMER- funksjonen for å opprettholde en løpende sum på et skjema.
Obs!: Ulagrede endringer til poster i domene er ikke inkludert når du bruker denne funksjonen. Hvis du vil at DSUMMER-funksjonen skal være basert på de endrede verdiene, må du først lagre endringene ved å klikke Lagre post i Poster-gruppen på Hjem-fanen, som flytter fokus til en annen post, eller ved hjelp av Oppdater-metoden.
Eksempler
Bruke DSUMMER-funksjonen i et uttrykk Du kan bruke en domenefunksjonen (for eksempel DSUMMER) i Oppdater til-raden i en oppdateringsspørring. Anta for eksempel at du vil spore gjeldende salg etter produkt i en Produkter-tabell. Du kan legge til et felt kalt SalgTilNå i Produkter-tabellen og kjøre en oppdateringsspørring for å beregne riktige verdier og oppdatere postene. Gjør dette ved å opprette en ny spørring basert på Produkter-tabellen, og klikk Oppdater i Spørringstype-gruppen på Utforming-fanen. Legg til SalgTilNå-feltet i spørringsrutenettet, og skriv inn følgende i Oppdater til-raden:
DSum("[Quantity]*[UnitPrice]", "Order Details", _
"[ProductID] = "& [ProductID])
Når du kjører spørringen, beregner Access det totale salgsbeløpet for hvert produkt, basert på informasjon fra en bestillingsdetaljtabell. Summen av salg for hvert produkt legges til produkttabellen.
Bruke DSUMMER i VBA-kode
Obs!: Eksemplene som følger, demonstrerer 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 i rullegardinlisten ved siden av Søk og skriver inn et eller flere begreper i søkeboksen.
Følgende eksempel oppsummerer verdiene fra Frakt-feltet for bestillinger som er sendt til Storbritannia. Domenet er en bestillingstabell. Vilkår-argumentet begrenser det resulterende settet med poster til dem der SkipLandOmråde er lik Storbritannia.
Dim curX As Currency
curX = DSum("[Freight]", "Orders", _ "[ShipCountryRegion] = 'UK'")
Det neste eksempelet beregner en sum ved å bruke to separate vilkår. Vær oppmerksom på at fottegn (') og firkanttegn (#) er inkludert i strenguttrykk, slik at når strengene er sammenkjedet, er strenglitteralen omsluttet av fottegn og datoen omsluttet av firkanttegn.
Dim curX As Currency
curX = DSum("[Freight]", "Orders", _ "[ShipCountryRegion] = 'UK' AND _ [ShippedDate] > #1-1-95#")