Sign in with Microsoft
New to Microsoft? Create an account.

За допомогою функції DCount можна визначити кількість записів, які указано в певному списку записів ( домен ). Використовуйте функцію DCount у модулі Visual Basic для ЗАСТОСУНКІВ (VBA), макрос, виразу запиту або обчислюваний елемент керування.

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

Синтаксис

DCount ( expr , domain [, criteria] )

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

Аргумент

Опис

expr

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

домен

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

умови

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

Примітки

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

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

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

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

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

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

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

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

Якщо домен – це таблиця з первинний ключ, можна також підрахувати загальну кількість записів, встановивши вираз до поля первинного ключа, оскільки в полі первинного ключа ніколи не буде 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-значення у виразі.

Під час використання цієї функції не включаються незбережені зміни, внесені до записів у домені . Якщо потрібно, щоб функція DCount базувала на зміненим значенням, потрібно спочатку зберегти зміни, клацнувши елемент зберегти запис у розділі записи на вкладці дані , перемістивши фокус до іншого запису або скориставшись методом Update .

Приклади запитів

Вираз

Результати

Виберіть елемент DCount ("код _ товару", "ProductSales", "знижка = 0") як Expr1 від ProductSales GROUP ("Ідентифікатор _ продукту"; "ProductSales"; "знижка = 0");

Повертає кількість значень у полі "код товару" таблиці "ProductSales", де значення "знижка" дорівнює "0".

Виберіть елемент DCount ("код _ товару", "ProductSales", "DateofSale = Date ()-1") як YesterdaySale від ProductSales GROUP ("Ідентифікатор _ продукту"; "ProductSales"; "DateofSale = Date () – 1");

Повертає кількість значень у полі "Ідентифікатор _ товару" таблиці "ProductSales", де "DateofSale" – за день до поточної дати.

Приклад VBA

Примітка.: У прикладах нижче показано використання цієї функції в модулі 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#

Потрібна додаткова довідка?

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

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

Наскільки ви задоволені якістю мови?
Що вплинуло на ваші враження?

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

×