DMin és DMax függvény

Hatókör
Microsoft 365-höz készült Access Access 2024 Access 2021 Access 2019 Access 2016

A DMin és a DMax függvényekkel meghatározhatja egy adott rekordhalmaz (tartomány) minimális és maximális értékeit. A DMin és a DMax függvényt Visual Basic for Applications (VBA) modulban, makróban, lekérdezési kifejezésben vagy számított vezérlőelemben használhatja.

Használhatja például a DMin és a DMax függvényt egy jelentés számított vezérlőiben egy adott ügyfél legkisebb és legnagyobb megrendelési összegének megjelenítéséhez. Vagy használhatja a DMin függvényt egy lekérdezési kifejezésben az összes olyan rendelés megjelenítésére, amelynek kedvezménye nagyobb, mint a minimális lehetséges kedvezmény.

Szintaxis

DMin(kifejezés; tartomány [, kritérium] )

DMax(kifejezés; tartomány [, kritérium] )

Az Ab.Min és az Ab.Max függvény a következő argumentumokat tartalmazza:

Argumentum Leírás:
kif Kötelező. Olyan kifejezés, amely megadja azt a mezőt, amelynek vissza szeretné adni a legkisebb és a legnagyobb értékét. Ez lehet egy tábla vagy lekérdezés egy mezőjét azonosító sztringkifejezés, vagy egy olyan kifejezés, amely számítást végez az adott mező adatain. A kifejezésben megadhatja egy mező nevét egy táblában, egy űrlap vezérlőelemét, egy állandót vagy egy függvényt. Ha a kifejezés tartalmaz egy függvényt, az lehet beépített vagy felhasználó által definiált, de nem egy másik tartomány-összesítő vagy SQL összesítő függvény.
tartomány Kötelező. Olyan karakterlánc-kifejezés, amely meghatározza a tartományt alkotó rekordok készletét. Lehet táblanév vagy olyan lekérdezés neve, amelyhez nem szükséges paramétert megadni.
kritérium Nem kötelező. Sztringkifejezés, amellyel korlátozható az adattartomány, amelyen a DMin vagy a DMax függvényt végrehajtják. A feltételek például gyakran egyenértékűek az SQL-kifejezések WHERE záradékával, a WHERE szó nélkül. Ha a feltétel nincs megadva, a DMin és a DMax függvény kiértékeli a kifejezés értékét a teljes tartományon. A feltételekben szereplő mezőknek szintén tartománybeli mezőnek kell lenniük, ellenkező esetben a DMin és a DMax függvény null értéket ad vissza.

Megjegyzések

A DMin és a DMax függvény a feltételeknek megfelelő minimális és maximális értékeket adja vissza. Ha a kifejezés numerikus adatokat azonosít, a DMin és a DMax függvény numerikus értékeket ad vissza. Ha a kifejezés sztringadatokat azonosít, akkor az első vagy utolsó betűrendben megadott sztringet adja vissza.

A DMin és a DMax függvény figyelmen kívül hagyja a null értékeket a kifejezés által hivatkozott mezőben. Ha azonban egyetlen rekord sem felel meg a feltételeknek , vagy ha a tartomány nem tartalmaz rekordokat, a DMin és a DMax függvény null értéket ad vissza.

Függetlenül attól, hogy a DMin vagy a DMax függvényt makróban, modulban, lekérdezési kifejezésben vagy számított vezérlőelemben használja, gondosan kell összeállítania a kritériumargumentumot, hogy a kiértékelése megfelelő legyen.

A DMin és a DMax függvénnyel feltételeket adhat meg egy lekérdezés Feltétel sorában, egy lekérdezés számított mezőkifejezésében vagy egy frissítő lekérdezés Frissítés sorában.

Megjegyzés

Használhatja a DMin és a DMax függvényt, illetve a Min és a Max függvényt egy összeg lekérdezés számított mezőkifejezésében. Ha a DMin vagy a DMax függvényt használja, az értékek kiértékelése az adatok csoportosítása előtt történik. Ha a Min vagy a Max függvényt használja, az adatok csoportosítása a mezőkifejezés értékeinek kiértékelése előtt történik.

Akkor használja a DMin vagy a DMax függvényt egy számított vezérlőelemben, ha feltételeket kell megadnia a függvény végrehajtásához használt adatok tartományának korlátozásához. Ha például meg szeretné jeleníteni a Kaliforniába szállított rendelések maximális szállítási díját, állítsa egy szövegmező ControlSource tulajdonságát a következő kifejezésre:

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

Ha egyszerűen meg szeretné találni a tartomány összes rekordjának minimális vagy maximális értékét, használja a Min vagy a Max függvényt.

Használhatja az Ab.Min vagy az Ab.Max függvényt egy modulban vagy makróban vagy űrlapon lévő számított vezérlőelemben, ha a megjelenítendő mező nem abban a rekordforrásban van, amelyen az űrlap alapul.

tipp

Bár a DMin vagy a DMax függvénnyel megkeresheti egy idegen tábla mezőinek minimális vagy maximális értékét, hatékonyabb lehet olyan lekérdezést létrehozni, amely a szükséges mezőket tartalmazza mindkét táblából, és az űrlapot vagy jelentést erre a lekérdezésre alapozza.

Megjegyzés

A tartomány rekordjainak nem mentett módosításai nem szerepelnek a függvények használatakor. Ha azt szeretné, hogy a DMax vagy a DMin függvény a módosított értékeken alapuljon, először mentenie kell a módosításokat az Adatok lap Rekordok csoportjában a Rekord mentése gombra kattintva, a fókusz másik rekordra való áthelyezésével vagy az Update metódussal.

Példa

Megjegyzés

A következő példák egy Visual Basic for Applications (VBA) modulban mutatják be a függvény használatát. A VBA használatáról a Keresés elem mellett található legördülő listából a fejlesztői forrásokat választva, majd egy vagy több keresőszót megadva kaphat további tájékoztatást.

Az alábbi példában az Egyesült Királyságba irányuló szállítmányok Szállítási díj mezőjének legalacsonyabb és legmagasabb értékét kapja eredményül. A tartomány a Rendelések tábla. A kritérium argumentum az eredményül kapott rekordhalmazt azokra korlátozza, amelyekhez a ShipCountryRegion értéke Egyesült Királyság.


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

A következő példában a kritérium argumentum egy OrderDate nevű szövegmező aktuális értékét tartalmazza. A szövegmező egy Rendelések tábla Rendelésdátum mezőjéhez van kötve. Vegye figyelembe, hogy a vezérlőelemre mutató hivatkozás nem szerepel a sztringeket jelölő idézőjelek (") között. Ez biztosítja, hogy a DMax függvény minden meghívásakor az Access lekérte az aktuális értéket a vezérlőből.


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

A következő példában a feltételkifejezés tartalmaz egy változót: dteOrderDate. Vegye figyelembe, hogy a kettős keresztek (#) a karakterlánc-kifejezés részét képezik, így a karakterlánc összefűzésekor befoglalják a dátumot.


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