DMin- ja DMax-funktiot

Käytetään kohteeseen
Access for Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

DMin- ja DMax-funktioiden avulla voit määrittää määritetyn tietuejoukon (toimialueen) vähimmäis- ja enimmäisarvot. Käytä DMin- ja DMax-funktioita Visual Basic for Applications (VBA) -moduulissa, makrossa, kyselylausekkeessa tai lasketussa ohjausobjektissa.

Voit esimerkiksi käyttää DMin- ja DMax-funktioita raportin lasketuissa ohjausobjekteissa näyttämään tietyn asiakkaan pienimmät ja suurimmat tilaussummat. Voit myös käyttää DMin-funktiota kyselylausekkeessa näyttämään kaikki tilaukset, joiden alennus ylittää pienimmän mahdollisen alennuksen.

Syntaksi

DMin(lauseke, toimialue [, ehdot] )

DMax(lauseke, toimialue [, ehdot] )

DMin- ja DMax-funktioilla on seuraavat argumentit:

Argumentti Kuvaus
lauseke Pakollinen. Lauseke, joka määrittää kentän, jolle haluat löytää vähimmäis- tai enimmäisarvon. Se voi olla merkkijonolauseke, joka tunnistaa taulukon tai kyselyn kentän, tai se voi olla lauseke, joka suorittaa laskutoimituksen kyseisen kentän tiedoille. Lausekkeessa voit sisällyttää taulukon kentän nimen, lomakkeen ohjausobjektin, vakion tai funktion. Jos lauseke sisältää funktion, se voi olla joko sisäinen tai käyttäjän määrittämä, mutta ei toinen toimialueen kooste tai SQL-koostefunktio.
ryhmä Pakollinen. Merkkijonolauseke, joka määrittää ryhmän muodostavan tietuejoukon. Kyseessä voi olla taulukon nimi tai sellaisen kyselyn nimi, joka ei vaadi parametria.
ehto Valinnainen. Merkkijonolauseke, jonka avulla rajoitetaan niiden tietojen aluetta, joihin käytetään DMin- tai DMax-funktiota. Esimerkiksi ehdot vastaavat usein SQL-lausekkeen WHERE-lausetta ilman sanaa WHERE. Jos ehdot jätetään pois, DMin - ja DMax-funktiot arvioivat lauseketta koko toimialueen perusteella. Kaikkien ehtoihin sisältyvien kenttien on myös oltava toimialueen kenttiä, muuten DMin- ja DMax-funktiot palauttavat tyhjäarvon.

Huomautuksia

DMin- ja DMax-funktiot palauttavat vähimmäis- ja enimmäisarvot, jotka täyttävät ehdot. Jos lauseke tunnistaa numeerisia tietoja, DMin- ja DMax-funktiot palauttavat numeerisia arvoja. Jos lauseke määrittää merkkijonotiedot, ne palauttavat merkkijonon, joka on ensimmäinen tai viimeinen aakkosjärjestyksessä.

DMin- ja DMax-funktiot ohittavat tyhjäarvotlausekkeella viitatussa kentässä. Jos mikään tietue ei kuitenkaan täytä ehtoja tai jos toimialue ei sisällä tietueita, DMin- ja DMax-funktiot palauttavat tyhjäarvon.

Riippumatta siitä, käytätkö DMin- tai DMax-funktiota makrossa, moduulissa, kyselylausekkeessa tai lasketussa ohjausobjektissa, sinun on muodostettava ehtoargumentti huolellisesti sen varmistamiseksi, että se arvioidaan oikein.

DMin- ja DMax-funktioiden avulla voit määrittää ehtoja kyselyn Ehdot-rivillä, kyselyn lasketun kentän lausekkeessa tai päivityskyselyn Päivitä kohteeseen -rivillä.

Huomautus

Voit käyttää DMin - ja DMax-funktioita tai Min - ja Max-funktioita summakyselyn lasketussa kenttälausekkeessa. Jos käytät DMin- tai DMax-funktiota, arvoja arvioidaan ennen tietojen ryhmittämistä. Jos käytät Min- tai Max-funktiota, tiedot ryhmitetään ennen arvojen arvioimista kentän lausekkeessa.

Käytä DMin- tai DMax-funktiota lasketussa ohjausobjektissa, kun haluat määrittää ehdot, joiden perusteella rajoitetaan funktion suorittamisessa käytettävää tietoaluetta. Esimerkiksi jos haluat näyttää Kaliforniaan toimitettavasta tilauksesta veloitettavan enimmäisrahtimaksun, määritä tekstiruudun ControlSource-ominaisuuteen seuraava lauseke:

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

Jos haluat vain etsiä kaikkien toimialueen tietueiden vähimmäis- tai enimmäisarvon, käytä Min - tai Max-funktiota .

Voit käyttää DMin- tai DMax-funktiota moduulissa tai makrossa tai lasketussa ohjausobjektissa lomakkeessa, jos näytettävää kenttää ei ole lomakkeen perustana olevassa tietuelähteessä.

vinkki

Vaikka voit käyttää DMin- tai DMax-funktiota viitetaulukon kentän vähimmäis- tai enimmäisarvon etsimiseen, voi olla tehokkaampaa luoda kysely, joka sisältää tarvitsemasi kentät molemmista taulukoista, ja käyttää lomakkeen tai raportin pohjana kyselyä.

Huomautus

Toimialueen tietueiden tallentamattomia muutoksia ei oteta mukaan, kun käytät näitä funktioita. Jos haluat, että DMax- tai DMin-funktio perustuu muuttuneisiin arvoihin, sinun on ensin tallennettava muutokset napsauttamalla Tallenna tietueTietueet-kohdasta Tiedot-välilehdessä, siirtämällä kohdistus toiseen tietueeseen tai käyttämällä Päivitä-menetelmää.

Esimerkki

Huomautus

Seuraavissa esimerkeissä kerrotaan, kuinka tätä funktiota käytetään Visual Basic for Applications (VBA) -moduulissa. Jos haluat lisätietoja VBA:n käytöstä, valitse Sovelluskehittäjän opasHaku-kentän viereisestä luettelosta ja anna yksi tai useampi hakuehto hakukenttään.

Seuraava esimerkki palauttaa Isoon-Britanniaan toimitettujen tilausten Rahti-kentän alimmat ja korkeimmat arvot. domain-argumentti on Tilaukset-taulukko. Ehto-argumentti rajoittaa tuloksena saatavan tietuejoukon tietueisiin, joiden ShipCountryRegion on UK.


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

Seuraavassa esimerkissä ehtoargumentti sisältää Tilauspäivä-nimisen tekstiruudun nykyisen arvon. Tekstiruutu on sidottu Tilaukset-taulukon Tilauspäivä-kenttään. Huomaa, että merkkijonoja osoittavien kaksinkertaisten lainausmerkkien (") sisällä ei ole viittausta ohjausobjektiin. Näin varmistetaan, että aina, kun DMax-funktiota kutsutaan, Access hankkii ohjausobjektista nykyisen arvon.


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

Seuraavassa esimerkissä ehtolauseke sisältää muuttujan . dteOrderDate Huomaa, että numeromerkit (#) sisältyvät merkkijonolausekkeeseen, joten kun merkkijonot ketjutetaan, ne sulkevat päivämäärän.


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