Du kan bruke DMin - og DMax-funksjonene til å bestemme minimums- og maksimumsverdiene i et angitt sett med poster (et domene). Bruk DMin- og DMax-funksjonene i en VBA-modul (Visual Basic for Applications), en makro, et spørreuttrykk eller en beregnet kontroll.
Du kan for eksempel bruke DMin - og DMax-funksjonene i beregnede kontroller i en rapport for å vise de minste og største ordrebeløpene for en bestemt kunde. Du kan også bruke DMin-funksjonen i et spørringsuttrykk for å vise alle ordrer med en rabatt som er større enn minsterabatten.
Syntaks
DMin(uttr; domene [, vilkår] )
DMax(uttr; domene [, vilkår] )
DMin- og DMax-funksjonene har disse argumentene:
| Argumenter | Beskrivelse |
|---|---|
| uttr | Obligatorisk. Et uttrykk som identifiserer feltet der du vil finne minimums- eller maksimumsverdien. 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 uttrykk 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 DMin - eller DMax-funksjonen utføres. Vilkår tilsvarer for eksempel ofte WHERE-setningen i et SQL-uttrykk uten ordet HVOR. Hvis vilkår utelates, evaluerer DMin - og DMax-funksjoneneuttr mot hele domenet. Alle felter som er inkludert i vilkår , må også være et felt i domene, ellers returnerer DMin - og DMax-funksjonene en Null. |
Merknader
DMin- og DMax-funksjonene returnerer minimums- og maksimumsverdiene som oppfyller vilkårene. Hvis uttr identifiserer numeriske data, returnerer funksjonene DMin og DMax numeriske verdier. Hvis uttr identifiserer strengdata, returnerer de den første eller siste strengen alfabetisk.
DMin- og DMax-funksjonene ignorerer nullverdier i feltet som refereres til av uttr. Hvis ingen poster oppfyller vilkårene , eller hvis domenet ikke inneholder noen poster, returnerer imidlertid DMin - og DMax-funksjonene en Null.
Enten du bruker DMin - eller DMax-funksjonen i en makro, en modul, et spørreuttrykk eller en beregnet kontroll, må du konstruere vilkårsargumentet forsiktig for å sikre at det evalueres riktig.
Du kan bruke DMin - og DMax-funksjonen til å angi vilkår i Vilkår-raden i en spørring, i et beregnet feltuttrykk i en spørring eller i Oppdater til-raden i en oppdateringsspørring.
Obs!
Du kan bruke DMin - og DMax-funksjonene eller MIN - og Max-funksjonene i et beregnet feltuttrykk i en totalverdispørring. Hvis du bruker DMin - eller DMax-funksjonen , evalueres verdiene før dataene grupperes. Hvis du bruker MIN - eller MAX-funksjonen , grupperes dataene før verdier i feltuttrykket evalueres.
Bruk DMin - eller DMax-funksjonen i en beregnet kontroll når du må spesifisere vilkår for å begrense dataområdet der funksjonen utføres. Hvis du for eksempel vil vise maksimal fraktkostnad for en ordre som er sendt til California, angir du ControlSource-egenskapen for en tekstboks til følgende uttrykk:
=DMax("[Freight]", "Orders", "[ShipRegion] = 'CA'")
Hvis du ganske enkelt vil finne minimums- eller maksimumsverdien av alle poster i domenet, bruker du Min - eller Maks-funksjonen .
Du kan bruke DMin - eller DMax-funksjonen i en modul eller makro eller i en beregnet kontroll i et skjema hvis feltet du trenger å vise, ikke er i postkilden som skjemaet er basert på.
Tips
Selv om du kan bruke DMin- eller DMax-funksjonen til å finne minimums- eller maksimumsverdien fra et felt i en sekundærtabell, kan det være mer effektivt å opprette en spørring som inneholder feltene du trenger, fra begge tabellene og basere skjemaet eller rapporten på denne spørringen.
Obs!
Ulagrede endringer til poster i domene er ikke inkludert når du bruker disse funksjonene. Hvis du vil at DMax - eller DMin-funksjonen skal være basert på de endrede verdiene, må du først lagre endringene ved å klikke Lagre post under Poster på Data-fanen , flytte fokus til en annen post, eller ved hjelp av oppdateringsmetoden .
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 eksempel returnerer de laveste og høyeste verdiene fra Frakt-feltet for bestillinger som er sendt til Storbritannia. Domenet er en bestillingstabell. Vilkårsargumentet begrenser det resulterende settet med poster til dem der SkipLandOmråde er lik Storbritannia.
Dim curX As Currency
Dim curY As Currency
curX = DMin("[Freight]", "Orders", _
"[ShipCountryRegion] = 'UK'")
curY = DMax("[Freight]", "Orders", _
"[ShipCountryRegion] = 'UK'")
I neste eksempel inkluderer vilkårsargumentet gjeldende verdi i en tekstboks kalt Ordredato. Tekstboksen er bundet til et Ordredato-felt i en Ordrer-tabell. Vær oppmerksom på at referansen til kontrollen ikke er inkludert i doble anførselstegn (") som angir strenger. Dette sikrer at hver gang DMax-funksjonen hentes, henter Access den gjeldende verdien fra kontrollen.
Dim curX As Currency
curX = DMax("[Freight]", "Orders", "[OrderDate] = #" _
& Forms!Orders!OrderDate & "#")
I neste eksempel inneholder vilkårsuttrykket en variabel, dteOrderDate. Vær oppmerksom på at nummertegn (#) er inkludert i strenguttrykk, slik at når strengene er sammenkjedet, vil de omslutte datoen.
Dim dteOrderDate As Date
Dim curX As Currency
dteOrderDate = #03/30/2000#
curX = DMin("[Freight]", "Orders", _
"[OrderDate] = #" & dteOrderDate & "#")