Функція DCount

За допомогою функції DCount можна визначити кількість записів у вказаному наборі записів (домені). Функцію DCount можна використовувати в модулі Visual Basic for Applications (VBA), макросі, виразі запиту та обчислюваному елементі керування.

Наприклад, ви можете використати функцію DCount у модулі, щоб повернути кількість записів у таблиці "Замовлення", які відповідають замовленням, зробленим на певну дату.

Синтаксис

DCount ( expr , domain [, criteria] )

Синтаксис функції DCount має такі аргументи:

Аргумент

Опис

expr

Обов’язковий аргумент. Вираз, що визначає поле, для якого потрібно підрахувати записи. Це може бути рядковий вираз, який визначає поле в таблиці чи запиті, або вираз, який обчислює дані в цьому полі. В аргументі expr можна вказати ім’я поля в таблиці, елемента керування у формі, константи або функції. Якщо аргумент expr включає функцію, вона може бути вбудованою або користувацькою, але не може бути іншою агрегатною функцією домену чи агрегатною функцією SQL.

domain

Обов’язковий. Рядковий вираз, який визначає набір записів, щоб складають домен. Це може бути ім’я таблиці або ім’я запиту, у якого немає обов’язкових параметрів.

criteria

Необов’язковий аргумент. Рядковий вираз, що дає змогу обмежити діапазон даних, до якого застосовується функція DCount. Наприклад, аргумент criteria часто еквівалентний реченню WHERE у виразі SQL без слова WHERE. Якщо аргумент criteria не вказано, функція DCount обчислює аргумент expr для всього домену. Будь-яке поле, що міститься в аргументі criteria, також має бути вказано як поле в аргументі domain. В іншому разі функція DCount повертає Null-значення.


Примітки

Використовуйте функцію DCount, щоб підрахувати кількість записів у домені, коли не потрібно знати їхні значення. Хоча аргумент expr може виконати обчислення для поля, функція DCount просто підраховує кількість записів. Значення будь-якого обчислення, виконаного аргументом expr, недоступне.

В обчислюваному елементі керування використовуйте функції DCount, коли потрібно за допомогою умов обмежити діапазон даних, до якого застосовується функція. Наприклад, щоб відобразити кількість замовлень, які мають доставлятися до Каліфорнії, задайте як властивість ControlSource текстового поля такий вираз:

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

Якщо вам просто потрібно підрахувати всі записи в аргументі domain без жодних обмежень, використовуйте функцію Count.

Порада

Функцію Count оптимізовано для прискорення підрахунку записів у запитах. У виразі запиту замість функції DCount використовуйте функцію Count і вкажіть додаткові умови, щоб застосувати будь-які обмеження до результатів. Використовуйте функцію DCount, коли потрібно підрахувати записи в домені з модуля коду чи макросу або в обчислюваному елементі керування.

Функцію DCount можна використовувати, щоб підрахувати кількість записів із певним полем, якого немає в джерелі запису, на основі якого створено форму чи звіт. Наприклад, ви можете відобразити кількість замовлень у таблиці "Замовлення" в обчислюваному елементі керування у формі на основі таблиці "Продукти".

Функція DCount не підраховує записи, що містять Null-значення в полі, на яке посилається аргумент expr, якщо цей аргумент не є символом узагальнення "зірочка" (*). Якщо використовується зірочка, функція DCount обчислює загальну кількість записів, зокрема з полями, які містять Null-значення. У наведеному нижче прикладі обчислюється кількість записів у таблиці "Замовлення".

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

Якщо аргумент domain – це таблиця з первинним ключем, ви можете підрахувати загальну кількість записів, установивши для аргументу expr поле первинного ключа, оскільки в цьому полі ніколи не буде Null-значення.

Якщо аргумент expr визначає кілька полів, відокремте їхні імена оператором об’єднання: амперсандом (&) або оператором додавання (+). Якщо ви скористаєтесь амперсандом, функція DCount поверне кількість записів, які містять дані в будь-якому з перерахованих полів. Якщо ви скористаєтесь оператором додавання, функція DCount поверне кількість лише тих записів, які містять дані в усіх перерахованих полях. У прикладі нижче показано наслідки використання кожного оператора з полем, яке містить дані в усіх записах (ShipName), і полем, яке не містить даних (ShipRegion).

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

Примітка :  Щоб виконати об’єднання рядків, краще використовувати амперсанд. Оператор додавання варто використовувати, лише щоб додавати числа, хіба що ви спеціально хочете розповсюдити Null-значення у виразі.

Ця функція не враховує незбережені зміни в записах аргументу domain. Якщо потрібно, щоб функція DCount врахувала змінені значення, спочатку потрібно зберегти зміни. Для цього на вкладці Дані в групі Записи натисніть кнопку Зберегти запис, перемістіть фокус до іншого запису або скористайтеся методом Update.

Приклад

Примітка : У прикладах нижче показано використання цієї функції в модулі Visual Basic for Applications (VBA). Щоб отримати докладні відомості про використання модуля VBA, клацніть пункт Довідник розробника в розкривному списку поряд із полем Пошук і введіть у поле пошуку принаймні один термін.

Наведена нижче функція повертає кількість замовлень, доставлених до вказаної країни або регіону після зазначеної дати доставки. Домен – це таблиця "Замовлення".

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

Щоб викликати функцію, використайте у вікні перевірки цей рядок коду:

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

Отримуйте нові функції раніше за інших
Приєднайтеся до оцінювачів Office

Ця інформація корисна?

Дякуємо за ваш відгук!

Дякуємо за відгук! Схоже, вам може стати в нагоді допомога одного з наших спеціалістів служби підтримки Office, з яким ми вас можемо з’єднати.

×