Funkcie DMin a DMax môžete použiť na určenie minimálnych a maximálnych hodnôt v zadanej množine záznamov (doméne). Funkcie DMin a DMax môžete použiť v module Visual Basic for Applications (VBA), makre, výraze dotazu alebo vypočítavanom ovládacom prvku.
Funkcie DMin a DMax môžete napríklad použiť vo vypočítaných ovládacích prvkoch v zostave a zobraziť najnižšie a najvyššie objednávky pre konkrétneho zákazníka. Funkciu DMin môžete tiež použiť vo výraze dotazu na zobrazenie všetkých objednávok so zľavou, ktorá je väčšia ako minimálna možná zľava.
Syntax
DMin(výraz; doména [; kritériá] )
DMax(výraz; doména [; kritériá] )
Funkcie DMin a DMax majú tieto argumenty:
| Argument | Popis |
|---|---|
| výraz | Povinný argument. Výraz určujúci pole, pre ktoré chcete nájsť minimálnu a maximálnu hodnotu. Môže to byť reťazcový výraz identifikujúci pole v tabuľke alebo dotaze, alebo to môže byť výraz, ktorý vykoná výpočet s údajmi v danom poli. Do výrazu môžete zahrnúť názov poľa v tabuľke, ovládací prvok vo formulári, konštantu alebo funkciu. Ak výraz obsahuje funkciu, môže byť vstavaná alebo používateľom definovaná, ale nie agregačná funkcia inej domény alebo agregačná funkcia SQL. |
| doména | Povinný argument. Výraz reťazca určujúci množinu záznamov, ktoré vytvárajú doménu. Môže to byť názov tabuľky alebo názov pre dotaz, ktorý nevyžaduje parameter. |
| kritériá | Voliteľný argument. Reťazcový výraz slúžiaci na obmedzenie rozsahu údajov, na ktorých sa vykonáva funkcia DMin alebo DMax . Kritériá sú napríklad často ekvivalentné klauzule WHERE vo výraze SQL bez slova WHERE. Ak sa vynechá kritérium , funkcie DMin a DMax vyhodnotia výraz voči celej doméne. Každé pole, ktoré je zahrnuté v kritériách , musí byť tiež poľom v doméne, inak funkcie DMin a DMax vrátia hodnotu Null. |
Poznámky:
Funkcie DMin a DMax vrátia minimálne a maximálne hodnoty, ktoré spĺňajú kritériá. Ak výraz identifikuje číselné údaje, funkcie DMin a DMax vrátia číselné hodnoty. Ak výraz identifikuje údaje reťazca, vráti reťazec, ktorý je prvý alebo posledný v abecednom poradí.
Funkcie DMin a DMax ignorujú hodnoty Null v poli, na ktoré odkazuje výraz. Ak však kritériá nespĺňa žiadny záznam alebo akdoména neobsahuje žiadne záznamy, funkcie DMin a DMax vrátia hodnotu Null.
Bez ohľadu na to, či používate funkciu DMin alebo DMax v makre, module, výraze dotazu alebo vypočítavanom ovládacom prvku, argument kritérií je potrebné zostaviť pozorne, aby sa zabezpečilo správne vyhodnotenie.
Funkcie DMin a DMax môžete použiť na zadanie kritérií v riadku Kritériá dotazu, vo výraze vypočítavaného poľa v dotaze alebo v riadku Aktualizovať do aktualizačného dotazu.
Poznámka
Funkcie DMin a DMax alebo funkcie Min a Max môžete použiť vo výraze vypočítavaného poľa dotazu súčtov. Ak používate funkciu DMin alebo DMax , hodnoty sa vyhodnocujú pred zoskupením údajov. Ak použijete funkciu Min alebo Max , údaje sa zoskupia pred vyhodnotením hodnôt vo výraze poľa.
Funkciu DMin alebo DMax použite vo vypočítavanom ovládacom prvku v prípade, ak potrebujete zadať kritériá na obmedzenie rozsahu údajov, v ktorom sa má funkcia použiť. Ak chcete napríklad zobraziť maximálne prepravné náklady účtované pre dodávku do Kalifornie, nastavte vlastnosť ControlSource textového poľa na nasledujúci výraz:
=DMax("[Freight]", "Orders", "[ShipRegion] = 'CA'")
Ak chcete jednoducho nájsť minimálnu alebo maximálnu hodnotu všetkých záznamov v doméne, použite funkciu Min alebo Max .
Funkciu DMin alebo DMax môžete použiť v module, makre alebo vo vypočítavanom ovládacom prvku vo formulári, ak sa pole, ktoré potrebujete zobraziť, nenachádza v zdroji záznamov, na ktorom je založený formulár.
tip
Hoci môžete použiť funkciu DMin alebo DMax na vyhľadanie minimálnej alebo maximálnej hodnoty z poľa v cudzej tabuľke, môže byť efektívnejšie vytvoriť dotaz obsahujúci polia, ktoré potrebujete z oboch tabuliek, a na základe formulára alebo zostavy na danom dotaze.
Poznámka
Neuložené zmeny záznamov v doméne sa pri používaní týchto funkcií nezahrnú. Ak chcete, aby bola funkcia DMax alebo DMin založená na zmenených hodnotách, je najprv nutné tieto zmeny uložiť tak, že na karte Údaje v časti Záznamy kliknete na položku Uložiť záznam, presuniete zameranie na iný záznam alebo použijete metódu Aktualizovať.
Príklad
Poznámka
Nasledujúce príklady ukazujú použitie tejto funkcie v module jazyka Visual Basic for Applications (VBA). Ak chcete získať ďalšie informácie o práci s jazykom VBA, vyberte z rozbaľovacieho zoznamu vedľa položky Hľadať možnosť Odkaz pre vývojára a do vyhľadávacieho poľa zadajte nejaké výrazy.
V nasledovnom príklade sa vráti najnižšia a najvyššia hodnota z poľa Preprava pre objednávky dodané do Spojeného kráľovstva. Doménou je tabuľka Objednávky. Argument kritériá obmedzuje výslednú množinu záznamov na záznamy, pre ktoré sa oblasť ShipCountryRegion rovná hodnote Spojené kráľovstvo.
Dim curX As Currency
Dim curY As Currency
curX = DMin("[Freight]", "Orders", _
"[ShipCountryRegion] = 'UK'")
curY = DMax("[Freight]", "Orders", _
"[ShipCountryRegion] = 'UK'")
V nasledujúcom príklade argument kritérií obsahuje aktuálnu hodnotu textového poľa s názvom DátumObjednávky. Textové pole je viazané na pole DátumObjednávky v tabuľke Objednávky. Všimnite si, že odkaz na ovládací prvok nie je zahrnutý v dvojitých úvodzovkách ("), ktoré označujú reťazec. Tým sa zabezpečí, že access pri každom volaní funkcie DMax získa aktuálnu hodnotu z ovládacieho prvku.
Dim curX As Currency
curX = DMax("[Freight]", "Orders", "[OrderDate] = #" _
& Forms!Orders!OrderDate & "#")
V nasledujúcom príklade výraz kritérií obsahuje premennú. dteOrderDate Všimnite si, že znaky mriežky (#) sú zahrnuté do výrazu reťazca, takže po zreťazení reťazcov bude dátum medzi nimi.
Dim dteOrderDate As Date
Dim curX As Currency
dteOrderDate = #03/30/2000#
curX = DMin("[Freight]", "Orders", _
"[OrderDate] = #" & dteOrderDate & "#")