Funktionen DMin og DMax

Du kan bruge funktionen DMin og DMax til at bestemme minimums- og maksimumsværdierne i et angivet postsæt (et domæne). Brug funktionen DMin og DMax i VBA-modulet (Visual Basic for Applications), en makro, et forespørgselsudtryk eller et beregnet kontrolelement.

Du kan f.eks. bruge funktionen DMin og DMax i beregnede kontrolelementer i en rapport til at få vist det mindste og den største ordrebeløb for en bestemt kunde. Eller du kan bruge funktionen DMin i et forespørgselsudtryk til at få vist alle ordrer med en rabat, der er større end den lavest mulige rabat.

Syntaks

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

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

Funktionen DMin og DMax består af følgende argumenter:

Argument

Beskrivelse

udtryk

Påkrævet. Et udtryk, der identificerer det felt, som du vil finde minimums- eller maksimumsværdien for. Det kan være et strengudtryk, der angiver et felt i en tabel eller en forespørgsel, eller det kan være et udtryk, der udfører en beregning på data i dette 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 omfatter en funktion, kan den enten være indbygget eller brugerdefineret, men ikke en anden domæne- eller SQL-aggregatfunktion.

domæne

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

kriterier

Valgfri. Et strengudtryk, der bruges til at begrænse det dataområde, som funktionen DMin eller DMax udføres på. F.eks. svarer kriterier ofte til WHERE-delsætningen i et SQL-udtryk uden ordet WHERE. Hvis kriterier udelades, evaluerer funktionen DMin og DMaxudtryk i forhold til hele domænet. Alle de felter, som medtages i kriterier, skal også være felter i domæne. Hvis dette ikke er tilfældet, returnerer funktionen DMin og DMax en Null-værdi.


Bemærkninger

Funktionen DMin og DMax returnerer de minimums- og maksimumsværdier, der opfylder kriterier. Hvis udtryk angiver numeriske data, returnerer funktionen DMin og DMax numeriske værdier. Hvis udtryk angiver strengdata, returneres den streng, som er alfabetisk først eller sidst.

Funktionen DMin og DMax ignorerer Null-værdier i det felt, som udtryk refererer til. Men hvis der ikke er nogen post, der opfylder kriterier, eller hvis domæne ikke indeholder nogen poster, returnerer funktionen DMin og DMaxen Null-værdi.

Uanset om du bruger funktionen DMin eller DMax i en makro, et modul, et forespørgselsudtryk eller et beregnet kontrolelement, skal du være omhyggelig med at udforme argumentet kriterier for at sikre, at det evalueres korrekt.

Du kan bruge funktionen DMin og DMaxtil at angive kriterier i rækken Kriterier for en forespørgsel i et beregnet feltudtryk i en forespørgsel eller i rækken Opdater til for en opdater forespørgsel

Bemærk: Du kan bruge funktionen DMin og DMax eller funktionen Min og Max i et beregnet feltudtryk for en totalforespørgsel. Hvis du bruger funktionen DMin eller DMax, evalueres værdier, inden dataene grupperes. Hvis du bruger funktionen Min eller Max, grupperes dataene, inden værdier i feltudtrykket evalueres.

Brug funktionen DMin eller DMax i et beregnet kontrolement, hvis du har brug for at angive kriterier, der begrænser det dataområde, som funktionen udføres på. Hvis du f.eks. vil have vist de maksimale fragtomkostninger, som er opkrævet for en forsendelse til Californien, skal du angive egenskaben Kontrolelementkilde for en tekstboks til følgende udtryk:

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

Hvis du bare vil finde minimums- og maksimumsværdien for alle poster i domæne, skal du bruge funktionen Min eller Max function.

Du kan bruge funktionen DMin eller DMax i et modul eller en makro eller i et beregnet kontrolelement i en formula, hvis det felt, som du vil have vist, ikke er i den postkilde, som formularen er baseret på.

tip

Selvom du kan bruge funktionen DMin eller DMax til at finde minimums- eller maksimumsværdien fra et felt i en fremmed tabel, kan det være mere effektivt at oprette en forespørgsel, der indeholder de felter, du har brug for fra begge tabeller, og derefter basere formularen eller rapporten på denne forespørgsel.

Bemærk: Ikke gemte ændringer af poster i domæne medtages ikke, når du bruger disse funktioner. Hvis du vil basere funktionen DMax eller DMin på de ændrede værdier, skal du først gemme ændringerne ved at klikke på Gem post under Poster under fanen Data, flytte fokus til en anden post eller ved hjælp af metoden Opdater.

Eksempel

Bemærk: I de følgende eksempler demonstreres brugen af denne funktion i et VBA-modul (Visual Basic for Applications). Du kan få yderligere oplysninger om arbejde med VBA ved at vælge Udviklerreference på rullelisten ud for Søg og indtaste et eller flere udtryk i søgeboksen.

Følgende eksempel returnerer den højeste og laveste værdi i feltet Fragt for ordrer, der blev afskibet i Storbritannien. Domænet er en ordretabel. Argumentet kriterier begrænser resultatpostsættet til de poster, hvor Modtagerland er lig med UK.

Dim curX As Currency
Dim curY As Currency
curX = DMin("[Freight]", "Orders", _
"[ShipCountryRegion] = 'UK'")
curY = DMax("[Freight]", "Orders", _
"[ShipCountryRegion] = 'UK'")

I det næste eksempel omfatter argumentet kriterier den aktuelle værdi i en tekstboks med navnet Ordredato. Tekstboksen er forbundet med feltet Ordredato i tabellen Ordrer. Bemærk, at henvisningen til kontrolelementet ikke er indeholdt i de dobbelte anførselstegn ("), der angiver strengene. Dette sikrer, at Microsoft Office Access 2007 får den aktuelle værdi fra kontrolelementet, hver gang funktionen DMax kaldes.

Dim curX As Currency
curX = DMax("[Freight]", "Orders", "[OrderDate] = #" _
& Forms!Orders!OrderDate & "#")

I det næste eksempel omfatter kriterieudtrykket en variabel, dteOrderDate. Bemærk, at nummertegn (#) er medtaget i strengudtrykket, således at strengene vil indeholde datoen, når de sammenføjes.

Dim dteOrderDate As Date
Dim curX As Currency
dteOrderDate = #03/30/2000#
curX = DMin("[Freight]", "Orders", _
"[OrderDate] = #" & dteOrderDate & "#")
Del Facebook Facebook Twitter Twitter Mail Mail

Var disse oplysninger nyttige?

Fantastisk! Har du mere feedback?

Hvordan kan vi forbedre det?

Tak for din feedback!

×