Applies To„Access“, skirta „Microsoft 365“ „Access 2024“ Access 2021 Access 2019 Access 2016

Funkciją DCount galite naudoti norėdami nustatyti, kiek įrašų yra nurodytame įrašų rinkinyje ( domenas ). Funkciją DCount naudokite "Visual Basic for Applications" (VBA) modulyje, makrokomanda, užklausos reiškinyje arba apskaičiuojamasis valdiklis.

Pavyzdžiui, galite naudoti funkciją DCount modulyje, kad būtų pateiktas įrašų skaičius lentelėje Užsakymai, kurie atitinka užsakymus, pateiktus konkrečią datą.

Sintaksė

DCount ( išraiška , domenas [, kriterijai] )

Funkcijos DCount sintaksė turi tokius argumentus:

Argumentas

Aprašas

reiškinys

Būtinas. Reiškinys, identifikuojantis lauką, kurio įrašus norite skaičiuoti. Tai gali būti eilutės išraiška, identifikuojanti lauką lentelėje ar užklausą, arba reiškinys, atliekantis duomenų skaičiavimus tame lauke. Reiškinyje galite įtraukti lentelės lauko pavadinimą, formos valdiklį, konstantą arba funkciją. Reiškinyje esanti funkcija gali būti įtaisytoji arba apibrėžta vartotojo, tačiau negali būti kito domeno agregavimo ar SQL agregavimo funkcija.

domenas

Būtinas. Eilutės reiškinys, identifikuojantis domeną sudarančių įrašų rinkinį. Tai gali būti lentelės pavadinimas arba užklausos, kuriai nebūtinas parametras, pavadinimas.

kriterijai

Pasirenkamas. Eilutės reiškinys, naudojamas apriboti duomenų diapazoną, kuriame atliekama funkcija DCount . Pvz., kriterijai dažnai yra sąlygos WHERE atitikmuo SQL reiškinyje, be žodžio WHERE. Jei kriterijai nenurodyti, funkcija DCount įvertina expr pagal visą domeną. Bet kuris laukas, įtrauktas į kriterijus , taip pat turi būti domene; kitu atveju funkcija DCount grąžina Neapibrėžtą reikšmę (Null).

Pastabos

Naudokite funkciją DCount , kad apskaičiuotumėte domeno įrašų skaičių, kai jums nereikia žinoti konkrečių jų reikšmių. Nors reiškinys argumentas gali atlikti skaičiavimą su lauku, funkcija DCount tiesiog suskaičiuoja įrašų skaičių. Išraiška atliktų skaičiavimų reikšmė negalima.

Funkciją DCount naudokite skaičiavimų valdiklyje, kai reikia nurodyti kriterijus duomenų diapazonui, kuriame atliekama funkcija, apriboti. Pavyzdžiui, norėdami rodyti užsakymų, kurie bus siunčiami į Kaliforniją, skaičių, nustatykite teksto lauko ypatybę ControlSource kaip šį reiškinį:

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

Jei tiesiog norite suskaičiuoti visus domeno įrašus nenurodydami jokių apribojimų, naudokite funkciją Count .

Patarimas Funkcija Count buvo optimizuota užklausų įrašų skaičiavimui paspartinti. Naudokite funkciją Count užklausos reiškinyje vietoj funkcijos DCount ir nustatykite pasirinktinius kriterijus, kad įgalintumėte bet kokius rezultatų apribojimus. Naudokite funkciją DCount, kai turite skaičiuoti domeno įrašus iš kodo modulio ar makrokomandos arba skaičiavimų valdiklio.

Funkciją DCount galite naudoti norėdami suskaičiuoti įrašų, kuriuose yra konkretus laukas, kurio nėra įrašų šaltinyje, kuriuo pagrįsta jūsų forma arba ataskaita, skaičių. Pavyzdžiui, užsakymų skaičių lentelėje Užsakymai galite rodyti skaičiavimų valdiklyje formoje, pagrįstoje lentele Produktai.

Funkcija DCount neskaičiuoja įrašų, kuriuose yra Null reikšmių lauke, kurį nurodo reiškinys , nebent reiškinys yra žvaigždutė (*) pakaitos simbolis. Jei naudojate žvaigždutę, funkcija DCount apskaičiuoja bendrą įrašų skaičių, įskaitant tuos, kuriuose yra Null laukų. Toliau pateiktame pavyzdyje apskaičiuojamas įrašų skaičius lentelėje Užsakymai.

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

Jei domenas yra lentelė su pirminis raktas, taip pat galite suskaičiuoti bendrą įrašų skaičių nustatydami reiškinys pirminio rakto lauką, nes pirminio rakto lauke niekada nebus Null .

Jei reiškinys identifikuoja kelis laukus, atskirkite laukų pavadinimus su sujungimo operatoriumi, sujungimo operatoriumi (&) arba papildymo operatoriumi (+). Jei laukams atskirti naudojate ampersandą, funkcija DCount grąžins įrašų, kuriuose yra duomenų bet kuriame iš išvardytų laukų, skaičių. Jei naudojate papildymo operatorių, funkcija DCount grąžins tik įrašų, kuriuose yra duomenų visuose išvardytuose laukuose, skaičių. Šiame pavyzdyje parodytas kiekvieno operatoriaus poveikis, kai jis naudojamas su lauku, kuriame yra duomenų visuose įrašuose (ShipName) ir lauke, kuriame nėra duomenų (Išsiuntimo regionas).

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

Pastaba:  Ampersandas yra pageidautinas eilutės sujungimo operatorius. Turėtumėte vengti naudoti papildymo operatorių kitiems nei skaitiniai papildymai, nebent norite platinti neapibrėžtas reikšmes išraiškoje.

Naudojant šią funkciją, neįrašyti domeno įrašų pakeitimai neįtraukiami. Jei norite, kad funkcija DCount būtų pagrįsta pakeistu įrašu, pirmiausia pakeitimus turite įrašyti skirtuko Duomenys dalyje Įrašai spustelėdami Įrašyti įrašą, perkeldami įvesties vietą į kitą įrašą arba naudodami metodą Update.

Užklausų pavyzdžiai

Reiškinys

Rezultatai

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

Grąžina reikšmių, esančių lentelės "ProductSales" lauke Produkto ID, kurio reikšmė "Nuolaida" yra "0", skaičių.

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

Grąžina reikšmių skaičių lentelės "ProductSales" lauke "ProductID", kur "DateofSale" yra diena prieš dabartinę datą.

VBA pavyzdys

Pastaba: Pateiktuose pavyzdžiuose parodyta, kaip naudoti šią funkciją „Visual Basic for Applications“ (VBA) modulyje. Daugiau informacijos apie darbą su VBA rasite išplečiamajame sąraše pasirinkę Kūrėjų nuoroda (šalia Ieškos) ir ieškos lauke įvedę vieną ar daugiau sąlygų.

Ši funkcija pateikia užsakymų, išsiųstų į nurodytą šalį / regioną po nurodytos išsiuntimo datos, skaičių. Domenas yra lentelė Užsakymai.

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

Norėdami iškviesti funkciją, lange Tiesioginis naudokite šią kodo eilutę:

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

Reikia daugiau pagalbos?

Norite daugiau parinkčių?

Sužinokite apie prenumeratos pranašumus, peržiūrėkite mokymo kursus, sužinokite, kaip apsaugoti savo įrenginį ir kt.

Bendruomenės padeda užduoti klausimus ir į juos atsakyti, pateikti atsiliepimų ir išgirsti iš ekspertų, turinčių daug žinių.