Pomocí funkce DSum můžete vypočítat součet sady hodnot v zadané sadě záznamů ( Doména ). Použití funkce DSum v modulu VBA (Visual Basic for Applications), Makro, výrazu dotazu nebo Vypočítaný ovládací prvek.

Můžete ji například použít ve výrazu počítaného pole v dotazu k výpočtu celkových hodnot prodeje uskutečněných určitým zaměstnancem v určitém časovém období. Můžete ji také použít v počítaném ovládacím prvku k zobrazení mezisoučtu prodejů pro určitý produkt.

Syntaxe

DSum ( výraz , doména [, kritéria] )

Syntaxe funkce DSum má tyto argumenty:

Argument

Popis

výraz

Povinný argument. Výraz určující číselné pole, jehož hodnoty chcete sečíst. Může jít buď o Řetězcový výraz, který určuje pole v tabulce nebo dotazu, nebo výraz, jehož prostřednictvím je proveden výpočet s daty daného pole. Argument výraz může obsahovat název pole tabulky, ovládacího prvku ve formuláři, konstanty nebo funkce. Pokud argument výraz obsahuje funkci, může jít o předdefinovanou funkci nebo funkci definovanou uživatelem, ale nikoli o jinou doménovou agregační funkci nebo agregační funkci SQL.

doména

Povinný argument. Řetězcový výraz identifikuje sadu záznamů tvořících doménu. Může jít o název tabulky nebo název dotazu, který nevyžaduje parametr.

kritéria

Nepovinný argument. Řetězcový výraz použitý k omezení oblasti dat, s kterou bude funkce DSum provedena. Kritéria jsou například často ekvivalentní klauzuli WHERE ve výrazu SQL, aniž by se slovem WHERE. Pokud není kritérium vynecháno, funkce DSum vyhodnotí výraz s celou doménou. Každé pole, které je zahrnuté v kritériích, musí být také polem v doméně. V opačném případě vrátí funkce DSum hodnotu Null.


Poznámky

Pokud argumentu kritéria neodpovídá žádný záznam nebo doména neobsahuje žádné záznamy, vrátí funkce DSum hodnotu Null.

Bez ohledu na to, jestli funkci DSum použijete v makru, modulu, výrazu dotazu nebo počítaném ovládacím prvku, je nutné vytvořit argument kritéria pečlivě, aby bylo zajištěno správné vyhodnocení funkce.

Pomocí funkce DSum můžete zadat kritéria v řádku Kritéria v dotazu, v počítaných polích ve výrazu dotazu nebo v řádku Aktualizovat Aktualizační dotaz.

Poznámka: Funkci DSum nebo Sum můžete použít ve výrazu počítaného pole v Souhrnný dotaz. Pokud použijete funkci DSum, hodnoty se počítají před seskupením dat. Pokud použijete funkci Sum, data se seskupí dřív, než se vyhodnotí hodnoty ve výrazu pole.

Použití funkce DSum je výhodné, jestliže potřebujete zobrazit součet sady hodnot z pole, které není ve zdroji záznamů pro formulář nebo sestavu. Předpokládejme například, že jste vytvořili formulář, který zobrazuje informace o určitém výrobku. Funkci DSum je možné použít k udržování mezisoučtu prodeje daného výrobku v počítaném ovládacím prvku.

tip

Pokud potřebujete v ovládacím prvku v sestavě udržovat mezisoučet, je možné v případě, že zdroj záznamů pro danou sestavu obsahuje pole, na kterém je ovládací prvek založen, použít vlastnost PrůběžnáSuma daného ovládacího prvku. K udržování průběžného součtu ve formuláři použijte funkci DSum.

Poznámka: Neuložené změny záznamů v argumentu doména nebudou při použití této funkce zahrnuty. Pokud chcete, aby byla funkce DSum založena na změněných hodnotách, je nutné nejdříve změny uložit kliknutím na Uložit záznam ve skupinovém rámečku Záznamy na kartě Domů, přesunutím fokusu na jiný záznam nebo pomocí metody Update.

Příklady

Použití funkce DSum ve výrazu    V aktualizačním dotazu na řádku Aktualizovat do můžete použít funkci domény (třeba DSum). Předpokládejme například, že chcete sledovat aktuální prodeje podle produktu v tabulce Výrobky. Do tabulky Výrobky můžete přidat nové pole s názvem SalesSoFar a spuštěním aktualizačního dotazu vypočítat správné hodnoty a aktualizovat záznamy. Pokud to chcete udělat, vytvořte nový dotaz založený na tabulce Výrobky a na kartě Návrh klikněte ve skupině Typ dotazu na Aktualizovat. Přidejte do mřížky dotazu pole SalesSoFar a na řádku Aktualizovat do zadejte toto:

DSum("[Quantity]*[UnitPrice]", "Order Details", _
"[ProductID] = "& [ProductID])

Po spuštění dotazu vypočítá Access na základě informací z tabulky Rozpis objednávek celkové množství prodeje pro jednotlivé produkty. Součty prodeje jednotlivých produktů jsou přidány do tabulky Výrobky.

Použití funkce DSum v kódu jazyka VBA    

Poznámka: Následující příklady ukazují použití této funkce v modulu VBA (Visual Basic pro Applications). Pokud vás zajímají další informace o práci s modulem VBA, vyberte Referenční informace pro vývojáře, které najdete v rozevíracím seznamu vedle položky Hledat, a do vyhledávacího pole napište požadované pojmy.

V následujícím příkladu je vypočítán součet hodnot v poli Dopravné pro objednávky s místem dodání ve Velké Británii. Doménou je tabulka Objednávky. Argument kritéria omezuje sadu výsledků dotazu na záznamy, u kterých je v poli ZeměPříjemce hodnota UK.

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

V následujícím příkladu je součet vypočítán pomocí dvou samostatných kritérií. Všimněte si, že řetězcový výraz obsahuje jednoduché uvozovky (') a znaky #, aby byl při spojení řetězců řetězcový literál uzavřen v jednoduchých uvozovkách a datum uvedeno mezi znaky #.

Dim curX As Currency
curX = DSum("[Freight]", "Orders", _
"[ShipCountryRegion] = 'UK' AND _
[ShippedDate] > #1-1-95#")

Potřebujete další pomoc?

Rozšiřte své znalosti a dovednosti
Projít školení
Získejte nové funkce jako první
Připojit se k programu Microsoft Insider

Byly tyto informace užitečné?

Jak jste spokojeni s kvalitou překladu?
Co ovlivnilo váš názor?

Děkujeme za váš názor!

×