Applies ToAccess pro Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Funkci DSum můžete použít k výpočtu součtu množiny hodnot v zadané sadě záznamů ( Doména ). Funkci DSum použijte v modulu jazyka Visual Basic for Applications (VBA), Makro, výraz 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, který se používá k omezení rozsahu dat, na kterém se provádí funkce DSum . Například kritéria jsou často ekvivalentní klauzuli WHERE ve výrazu SQL bez slova WHERE. Pokud jsou kritéria vynechána, funkce DSum vyhodnotí výraz vůči celé doméně. Každé pole, které je součástí kritérií , musí být také polem v doméně; V opačném případě funkce DSum vrátí 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.

Funkci DSum můžete použít k určení kritérií v řádku Kritéria dotazu, v počítaném poli ve výrazu dotazu nebo v řádku Aktualizovat doAktualizační dotaz.

Poznámka: Ve výrazu počítaných polí v Souhrnný dotaz můžete použít funkci DSum nebo Sum . Pokud použijete funkci DSum , hodnoty se počítají před seskupením dat. Pokud použijete funkci Sum , data se před vyhodnocením hodnot ve výrazu pole seskupí.

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    Funkci domény (například DSum) můžete použít v řádku Aktualizovat do aktualizačního dotazu. Předpokládejme například, že chcete sledovat aktuální prodeje podle produktů v tabulce Produkty. Do tabulky Products 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. Uděláte to tak, že vytvoříte nový dotaz založený na tabulce Produkty a na kartě Návrh ve skupině Typ dotazukliknete na Aktualizovat. Přidejte do mřížky dotazu pole SalesSoFar a do řádku Aktualizovat do zadejte následující:

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 CurrencycurX = 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 CurrencycurX = DSum("[Freight]", "Orders", _    "[ShipCountryRegion] = 'UK' AND _    [ShippedDate] > #1-1-95#")

Potřebujete další pomoc?

Chcete další možnosti?

Prozkoumejte výhody předplatného, projděte si školicí kurzy, zjistěte, jak zabezpečit své zařízení a mnohem více.

Komunity vám pomohou klást otázky a odpovídat na ně, poskytovat zpětnou vazbu a vyslechnout odborníky s bohatými znalostmi.