Pomocou funkcií DMin a DMax môžete určiť minimálne a maximálne hodnoty, ktoré sa nachádzajú v zadanej množine záznamov (doména). Použite funkcie DMin a DMax v týchto prostrediach: modul Visual Basic for Applications (VBA), makro, výraz dotazu alebo vypočítavaný ovládací prvok.
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, ktorý určí pole v tabuľke alebo v dotaze, alebo to môže byť výraz, ktorý vykoná výpočet s údajmi v poli. Do argumentu výraz môžete zahrnúť názov poľa v tabuľke, ovládací prvok vo formulári, konštantu alebo funkciu. Ak argument výraz zahŕňa funkciu, môže to byť vstavaná alebo používateľom definovaná funkcia, 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 . Argument kritériá napríklad často zodpovedá klauzule WHERE vo výraze SQL, ale 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é vyhovujú kritériám. Ak argument výraz identifikuje číselné údaje, funkcie DMin a DMax vrátia číselné hodnoty. Ak argument výraz identifikuje reťazcové údaje, funkcie vrátia reťazec, ktorý je prvý alebo posledný v abecednom poradí.
Funkcie DMin a DMax ignorujú hodnoty Null v poli, na ktoré sa odkazuje v argumente výraz. Ak však kritériám nevyhovuje žiaden záznam, alebo ak doména neobsahuje žiadne záznamy, funkcie DMin a DMax vrátia hodnotu Null.
Bez ohľadu na to, či funkcie DMin alebo DMax použijete v makre, v module, vo výraze dotazu alebo vo vypočítavanom ovládacom prvku, argument kritériá je nutné zostaviť pozorne, aby sa zabezpečilo jeho 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ý dotaz.
Poznámka: Funkcie DMin a DMax alebo funkcie Min a Max môžete použiť vo výraze vypočítavaného poľa súhrnný dotaz. 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 cudzia tabuľka, 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: Pri použití týchto funkcií sa do spracovania nezahrnú neuložené zmeny v záznamoch v argumente doména. 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 vlastnosť 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éria 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 & "#")