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

Funkcijo DCount lahko uporabite za določanje števila zapisov, ki so v določenem naboru zapisov (zapis domena ). Uporabite funkcijo DCount v modulu Visual Basic for Applications (VBA), makro, izraz poizvedbe ali izračunani kontrolnik.

Funkcijo DCount lahko na primer uporabite v modulu, če želite vrniti število zapisov v tabeli »Naročila«, ki ustrezajo naročilom, oddanim določenega dne.

Sintaksa

DCount ( izraz , domena [, pogoj] )

Sintaksa funkcije DCount ima te argumente:

Argument

Opis

izraz

Obvezen. Izraz, ki določa polje, za katerega želite prešteti zapise. To je lahko izraz niza, ki določa polje v tabeli ali poizvedbi, ali pa izraz, ki izvaja funkcijo računanja podatkov v tem polju. V argument izraz lahko vključite ime polja v tabeli, kontrolnik na obrazcu, konstanto ali funkcijo. Če argument izraz vključuje funkcijo, je lahko vgrajen ali uporabniško določen, ne more pa biti skupek druge domene ali združevalne funkcije strežnika SQL.

domena

Obvezen. Izraz niza, ki določa nabor zapisov, ki sestavljajo domeno. To je lahko ime tabele ali ime poizvedbe za poizvedbo, ki ne zahteva parametra.

pogoji

Izbiren. Izraz niza, ki se uporablja za omejitev obsega podatkov, na katerem se izvede funkcija DCount. Pogoj je na primer pogosto enakovreden stavku WHERE v izjavi SQL, a brez besede WHERE. Če izpustite pogoj, funkcija DCount ovrednoti izraz glede na celotno domeno. Polje, ki je vključeno v pogoj, mora biti tudi polje v domeni; v nasprotnem primeru funkcija DCount vrne vrednost Null.

Pripombe

Uporabite funkcijo DCount za štetje števila zapisov v domeni, kadar niso pomembne njihove določene vrednosti. Čeprav lahko argument izraz izvede izračun v polju, funkcija DCount preprosto prešteje število zapisov. Vrednosti izračunov, ki jih izvede izraz niso na voljo.

Uporabite funkcijo DCount v izračunanem kontrolniku, če želite določiti pogoje za omejitev obsega podatkov, v katerih se izvaja funkcija. Če želite na primer prikazati število naročil za pošiljanje v Kalifornijo, nastavite lastnost ControlSource polja z besedilom na ta izraz:

=DCount("[OrderID]", "Orders", "[ShipRegion] = 'CA'")

Če pa želite samo prešteti vse zapise v domeni brez kakršnih koli omejitev, uporabite funkcijo Count.

Namig Funkcija Count je bila optimizirana za pospešitev štetja zapisov v poizvedbah. Funkcijo Count uporabite v izrazu poizvedbe namesto funkcije DCount in nastavite izbirne pogoje za uveljavitev omejitev rezultatov. Funkcijo DCount uporabite, kadar morate prešteti zapise v domeni iz modula kode ali makra ali v izračunanem kontrolniku.

Funkcijo DCount lahko uporabite za štetje zapisov, ki vsebujejo določeno polje, ki ni v viru zapisov, na katerem temelji obrazec ali poročilo. Na primer, prikažete lahko število naročil v tabeli »Naročila« v izračunanem kontrolniku v obrazcu, ki temelji na tabeli »Izdelki«.

Funkcija DCount ne šteje zapisov, ki vsebujejo vrednosti Null v polju, ki se sklicuje na izraz, razen če ni izraz nadomestni znak zvezdica (*). Če uporabite zvezdico, funkcija DCount izračuna skupno število zapisov, vključno s tistimi, ki vsebujejo polja Null. V spodnjem primeru je izračunano število zapisov v tabeli »Naročila«.

intX = DCount("*", "Orders")

Če je domena tabela z primarni ključ, lahko skupno število zapisov preštejete tudi tako, da nastavite izraz na polje s primarnim ključem, saj v polju s primarnim ključem nikoli ne bo ničelne vrednosti.

Če izraz določa več polj, ločite imena polj z operatorjem za združevanje, bodisi z znakom »in« (&) ali z operatorjem seštevanja (+). Če za ločevanje polj uporabite znak »in«, funkcija DCount vrne število zapisov, ki vsebujejo podatke v katerem koli od navedenih polj. Če uporabite operator seštevanja, funkcija DCount vrne samo število zapisov, ki vsebujejo podatke v vseh navedenih poljih. V naslednjem primeru so prikazani učinki posamičnih operatorjev, kadar jih uporabljate s poljem, ki vsebuje podatke v vseh zapisih (ImePrejemnika) in poljem, ki ne vsebuje podatkov (RegijaPrejemnika).

intW = DCount("[ShipName]", "Orders")intX = DCount("[ShipRegion]", "Orders")intY = DCount("[ShipName] + [ShipRegion]", "Orders")intZ = DCount("[ShipName] & [ShipRegion]", "Orders")

Opomba:  Znak »in« je priporočeni operator za spajanje nizov. Ne uporabljajte operatorja seštevanja za druge namene kot za seštevanje števil, razen, če izrecno ne želite razširiti ničelne vrednosti v izrazu.

Neshranjene spremembe zapisov v argumentu domena niso vključene, ko uporabite to funkcijo. Če želite, da funkcija DCount temelji na spremenjenih vrednostih, morate najprej shraniti spremembe tako, da kliknete Shrani zapis v skupini Zapisi na zavihku Podatki, s čimer premaknete fokus na drug zapis, ali pa uporabite način Posodobitev.

Primeri poizvedb

Izraz

Rezultati

SELECT DCount("ProductID","ProductSales","Discount=0") AS Expr1 FROM ProductSales GROUP BY DCount("ProductID","ProductSales","Discount=0");

Vrne število vrednosti v polju »IDizdelka« v tabeli »Naročila izdelkov«, kjer je vrednost »Popust« »0«.

SELECT DCount("ProductID","ProductSales","DateofSale=Date()-1") AS YesterdaySale FROM ProductSales GROUP BY DCount("ProductID","ProductSales","DateofSale=Date()-1");

Vrne število vrednosti v polju »IDizdelka« v tabeli »ProdajaProdaje izdelkov«, kjer je »DateofSale« dan pred trenutnim datumom.

primer VBA

Opomba: V spodnjih primerih je prikazana uporaba te funkcije v modulu Visual Basic for Applications (VBA). Če želite več informacij o delu z modulom VBA, izberite Vsebina za razvijalce na spustnem seznamu ob možnosti Iskanje in v iskalno polje vnesite enega ali več izrazov.

Spodnja funkcija vrne število naročil, odposlanih v določeno državo/regijo po navedenem datumu odpreme. Domeno predstavlja tabela »Naročila«.

Public Function OrdersCount _    (ByVal strCountryRegion As String, _    ByVal dteShipDate As Date) As Integer    OrdersCount = DCount("[ShippedDate]", "Orders", _        "[ShipCountryRegion] = '" & strCountryRegion & _        "' AND [ShippedDate] > #" & dteShipDate & "#")End Function

Če želite priklicati funkcijo, v neposrednem oknu uporabite to vrstico kode:

:OrdersCount "UK", #1/1/96#

Ali potrebujete dodatno pomoč?

Ali želite več možnosti?

Raziščite ugodnosti naročnine, prebrskajte izobraževalne tečaje, preberite, kako zaščitite svojo napravo in še več.

Skupnosti vam pomagajo postaviti vprašanja in odgovoriti nanje, posredovati povratne informacije in prisluhniti strokovnjakom z bogatim znanjem.