Обмеження на введення даних за допомогою правил перевірки
Applies ToAccess для Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Правила перевірки дають змогу перевіряти дані в настільних базах даних Access під час їх введення. Щоб правильно відформатувати правило, можна скористатися побудовником виразів. Правила перевірки можна налаштувати у вікні табличного подання даних або в режимі конструктора для таблиці. Правила перевірки в Access поділяються на три типи:

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

Приклади:

Заборонити значення дат у минулому: >=Date()

Загальноприйнятий формат електронної пошти: Is Null OR ((Like "*?@?*.? *") AND (Not Like "*[ ,;] *"))

Число менше або дорівнює п'яти: <=5

Поле грошової одиниці не може бути від'ємним: >=0

Обмеження довжини символу в рядку: Len([StringFieldName])<100

Правило перевірки поля в конструкторі таблиць Access

2. Правило перевірки запису   . За допомогою правила перевірки запису можна вказати умову, яку мають задовольняти всі припустимі записи. Правило перевірки запису дає змогу порівнювати значення в різних полях. Наприклад, для запису з двома полями даних можна вимагати, щоб значення одного поля завжди передували значенням іншого (наприклад, дата початку має передувати даті завершення).

Приклади:

Переконайтеся, що дата завершення не передує даті початку: [Дата завершення]>=[Дата початку]

Введіть потрібну дату, яка настає не пізніше ніж через 30 днів після дати замовлення: [Потрібна дата]<=[Дата_замовлення]+30

Правило перевірки таблиці в конструкторі таблиць Access

3. Перевірка форми   . За допомогою властивості Правило перевірки елемента керування у формі можна вказати умову, яку мають відповідати всі значення, введені в цьому елементі керування. Властивість Правило перевірки елемента керування працює подібно до правила перевірки поля. Зазвичай правило перевірки форми використовується замість правила перевірки поля, якщо правило стосується лише цієї форми, а не цілої таблиці (незалежно від місця його використання).

У цій статті

Огляд

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

Після введення даних програма Access перевіряє, чи не порушують ці введені дані правила перевірки – якщо це так, такі дані не приймаються, і програма Access виводить на екран повідомлення.

У програмі Access передбачено кілька способів обмеження вводу.

  • Типи даних.   Кожне поле таблиці має тип даних, що обмежує дані, які можуть вводити користувачі. Наприклад, у полі ­"Дата та час’’ можна вводити лише дату та час, у полі ­"Грошова одиниця’’ можна вводити лише грошові значення тощо.

  • Властивості поля.   Деякі властивості поля обмежують введення даних. Наприклад, властивість поля Розмір поля обмежує обсяг даних, який можна ввести.

    За допомогою властивості Правило перевірки можна також вимагати введення певних значень, а властивість Текст перевірки дає змогу повідомляти користувачам про будь-які помилки, яких вони припустилися. Наприклад, якщо ввести таке правило, як>100 І <1000 у властивості Правило перевірки, користувачі будуть змушені вводити значення в діапазоні від 100 до 1 000. Таке правило, як [Дата_завершення]>=[Дата_початку], змушує користувачів для дати завершення вводити число, яке настає не раніше дати початку. Якщо ввести, наприклад, такий текс: "Введіть значення в діапазоні від 100 до 1 000'' або "Введіть дату завершення, що настає не раніше дати початку'' у властивості Текст перевірки, припустившись помилки, користувачі знатимуть, що саме вони зробили не так, і як це виправити.

  • Маски вводу.   Щоб перевірити дані, можна скористатися маскою вводу, яка змушує користувачів вводити значення певним чином. Наприклад, маска вводу може змусити користувачів вводити дату в європейському форматі, наприклад 2007.04.14.

Ці методи перевірки даних можна використовувати окремо або в поєднанні один з одним. Дотримуватися типу даних обов'язково, тому вибирайте найбільш загальний тип для перевірки даних.

Додаткові відомості про типи даних, розміри полів і маски вводу див. в статті Загальні відомості про типи даних і властивості поля.

Типи правил перевірки

Можна створити два основних типи правил перевірки.

  • Правила перевірки полів   Правило перевірки поля використовується, щоб перевірити введене в поле значення в момент, коли ви переходите до іншого поля. Припустімо, є поле дати, у властивість Правило перевірки якого ви вводите >=#01/01/2010#. Отже, це правило вимагає від користувачів вводити дати, не раніші від 1 січня 2010 року. Якщо ввести дату, ранішу за 2010 рік, а потім спробувати перемістити фокус на інше поле, Access не дозволить залишити поточне поле, доки не буде вирішено цю проблему.

  • Правила перевірки записів.   Правило перевірки запису використовується, щоб керувати можливістю збереження запису (рядка в таблиці). На відміну від правила перевірки поля, у правилі перевірки запису враховуються інші поля в межах таблиці. Правило перевірки запису створюється в разі потреби перевірити значення в одному полі за значеннями в інших. Припустімо, наприклад, що компанія має поставити товар протягом 30 днів, і якщо поставку не буде здійснено протягом цього часу, вона повинна буде відшкодувати клієнту частину закупівельної ціни. У такому разі можна визначити правила перевірки записів, наприклад [Потрібна_дата]<=[Дата_замовлення]+30, щоб жоден користувач не міг ввести надто пізню дату поставки (значення в полі ­"Потрібна_дата’’).

Якщо синтаксис правил перевірки видається надто заплутаним, ознайомтеся з розділом Вміст правил перевірки, в якому пояснено синтаксис і наведено кілька прикладів правил перевірки.

Де можна використовувати правила перевірки

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

У розділі Додавання правила перевірки до таблиці пояснено, як додати правила перевірки до полів таблиці. У розділі Додавання правила перевірки до елемента керування у формі далі в цій статті пояснено процедуру додавання правил до властивостей в окремих елементах керування.

Умови, які можна задавати у правилі перевірки

Правила перевірки можуть містити вирази – функції, які повертають одне значення. Вираз можна використовувати для виконання обчислень, операцій із символами або перевірки даних. Вираз правила перевірки застосовується для перевірки даних. Наприклад, за допомогою виразу можна перевірити одну з послідовності значень, наприклад "Токіо'', "Москва'', ­"Париж'' або ­"Гельсінкі''. За допомогою виразів можна також виконувати математичні операції. Наприклад, вираз <100 примушує користувачів вводити значення менше 100. У виразі ([Дата_замовлення] - [Дата_поставки]) обчислюється кількість днів, що минули з моменту оформлення замовлення до моменту поставки.

Докладні відомості про вирази див. в статті Побудова виразу.

На початок сторінки

Додавання правила перевірки до таблиці

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

Примітки.: Правила перевірки не підтримують такі типи полів:

  • автонумерація;

  • об’єкт OLE;

  • вкладення;

  • ідентифікатор реплікації.

Створення правила перевірки поля

  1. Виберіть поле, яке потрібно перевірити.

  2. На вкладці Поля таблиці в групі Перевірка поля натисніть кнопку Перевірка та виберіть пункт Правило перевірки поля.

  3. Створіть правило за допомогою побудовника виразів. Щоб отримати додаткові відомості про використання побудовника виразів, див. статтю Використання побудовника виразів.

Створення повідомлення, яке має відображатися в разі введення в полі неприпустимих даних

  1. Виберіть поле, для якого має відображатися повідомлення в разі введення неприпустимих даних. Для поля вже має бути задано правило перевірки.

  2. На вкладці Поля таблиці в групі Перевірка поля натисніть кнопку Перевірка та виберіть пункт Повідомлення про перевірку поля.

  3. Введіть відповідне повідомлення. Наприклад, якщо правило перевірки має вигляд >10, буде доречним таке повідомлення: "Введіть значення менше 10".

Приклади правил перевірки полів і повідомлень див. в розділі Довідник із правил перевірки.

Створення правила перевірки запису

  1. Відкрийте таблицю, для якої потрібно перевірити записи.

  2. На вкладці Поля таблиці в групі Перевірка поля натисніть кнопку Перевірка та виберіть пункт Правило перевірки.

  3. Створіть правило за допомогою побудовника виразів. Щоб отримати додаткові відомості про використання побудовника виразів, див. статтю Використання побудовника виразів.

Створення повідомлення, яке має відображатися в разі введення для запису неприпустимих даних

  1. Відкрийте таблицю, для якої має відображатися повідомлення в разі введення неприпустимих даних. Для таблиці вже має бути задано правило перевірки запису.

  2. На вкладці Поля таблиці в групі Перевірка поля натисніть кнопку Перевірка та виберіть пункт Повідомлення про перевірку.

  3. Введіть відповідне повідомлення. Наприклад, якщо правило перевірки – [Дата_початку]<[Дата_завершення], можливо, повідомлення "Дата початку має передувати дати завершення".

На початок сторінки

Перевірка наявних даних на відповідність новому правилу перевірки

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

  1. Відкрийте таблицю, яку потрібно перевірити в поданні конструктора.

    На вкладці Конструктор таблиць у групі Знаряддя натисніть кнопку Правила перевірки перевірки.

  2. Натисніть кнопку Так, щоб закрити оповіщення та почати перевірку.

  3. Якщо відобразиться запит на збереження таблиці, натисніть кнопку Так.

  4. Під час цього процесу можуть відображатися інші різноманітні оповіщення. Прочитайте інструкції в кожному з них і натисніть відповідно кнопку Так або Ні, щоб завершити або зупинити перевірку.

На початок сторінки

Додавання правила перевірки до елемента керування у формі

За допомогою властивості Правило перевірки та Текст перевірки елемента керування форми можна перевіряти дані, які вводяться в цьому елементі керування, і допомогти користувачам, які ввели неправильні дані.

Порада.:  У разі автоматичного створення форми з таблиці за допомогою команд у групі ­­"Форма'' на стрічці, усі перевірки полів у початковій таблиці будуть успадковані відповідними елементами керування у формі.

Елемент керування може мати інше правило перевірки, ніж поле таблиці, з яким він пов’язаний. Це зручно, якщо до форми мають застосовуватися жорсткіші обмеження, ніж до таблиці. Спочатку застосовується правило форми, а потім – правило таблиці. Якщо до таблиці застосовуються жорсткіші обмеження, ніж до форми, правило, визначене для поля таблиці, має вищий пріоритет. Якщо правила є взаємовиключними, вони не дадуть вводити дані взагалі.

Припустімо, наприклад, що до поля дати в таблиці застосовується таке правило:

<#01.01.2010#

Але потім до елемента керування було застосовано інше правило, яке обмежує поле дати:

>=#01.01.2010#

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

Створення правила перевірки для елемента керування

  1. Клацніть правою кнопкою миші форму, яку потрібно змінити, і натисніть кнопку Подання макета.

  2. Клацніть правою кнопкою миші елемент керування, який потрібно змінити, і виберіть пункт Властивості, щоб відкрити вікно властивостей для елемента керування.

  3. Відкрийте вкладку Усі та введіть правило перевірки в поле властивості Правило перевірки.

    Порада.: Натисніть кнопку Зібрати, щоб запустити побудовник виразів.

    Щоб отримати додаткові відомості про використання побудовника виразів, див. статтю Використання побудовника виразів.

  4. Введіть повідомлення в поле властивості Текст перевірки.

На початок сторінки

Довідник із правил перевірки

У правилах перевірки використовується синтаксис виразів Access. Додаткові відомості про вирази див. в статті Загальні відомості про вирази.

Приклади правил перевірки та тексту перевірки

Правило перевірки

Текст перевірки

<>0

Введіть ненульове значення.

>=0

Значення має бути більшим або рівним нулю.

-або-

Слід ввести додатне число.

0 or >100

Значення має дорівнювати 0 або бути більшим, ніж 100.

BETWEEN 0 AND 1

Введіть значення зі знаком відсотка. (Для полів, у яких числові значення зберігаються у вигляді відсотків).

<#01.01.2007#

Введіть дату до 2007 року.

>=#01.01.2007# AND <#01.01.2008#

Дата має бути в 2007 році.

<Date()

Дата народження не може бути в майбутньому.

StrComp(UCase([Прізвище]); [Прізвище],0) = 0

Дані в полі "Прізвище'' мають бути написані з букви верхнього регістру.

>=Int(Now())

Введіть сьогоднішню дату.

Ч Or Ж

Введіть Ч для чоловіка або Ж для жінки.

LIKE "[A-Z]*@[A-Z].com" OR "[A-Z]*@[A-Z].net" OR "[A-Z]*@[A-Z].org"

Введіть адресу електронної пошти на .com, .net або .org.

[Потрібна_дата]<=[Дата_замовлення]+30

Введіть потрібну дату, яка мають наставати не пізніше, ніж через 30 днів з моменту замовлення.

[Дата_завершення]>=[Дата_початку]

Введіть дату завершення, яка настає не раніше дати початку.

Приклади синтаксису для загальновживаних операторів правила перевірки

Оператор

Функція

Приклад

NOT

Перевірка протилежних значень. Використовується перед усіма операторами порівняння, крім IS NOT NULL.

NOT > 10 (те ж саме, що <=10).

IN

Перевірка значень, які дорівнюють наявним елементам у списку. Значення порівняння має виглядати як список елементів, записаних через кому та взятих у дужки.

IN ("Токіо", "Париж", "Москва")

BETWEEN

Перевірка діапазону значень. Слід використовувати два значення для порівняння (менше та більше) , записані через роздільник AND.

BETWEEN 100 AND 1000 (те ж саме, що >=100 AND <=1000)

LIKE

Зіставлення рядків структури в полях "Текст'' і "Memo''.

LIKE "Geo*"

IS NOT NULL

Змушує користувачів вводити значення в полі. Результат такий же, як коли для властивості поля Обов’язково встановлено значення Так. Однак якщо властивість Обов’язково ввімкнуто, а користувач не вводить значення, у програмі Access відображається не дуже зрозуміле повідомлення про помилку. Зазвичай, базою даних зручніше користуватися, якщо в ній використовується функція IS NOT NULL і введено зрозуміле повідомлення в полі властивості Текст перевірки.

IS NOT NULL

AND

Указує, що мають виконуватися всі частини правила перевірки.

>= #01.01.2007# AND <=#03.06.2008#

Примітка.: Оператор AND можна також використовувати для поєднання правил перевірки. Наприклад: NOT "УК" AND LIKE "У*".

АБО

Указує, що мають виконуватися не всі, а лише деякі правила перевірки.

січень OR лютий

<

Менше.

<=

Менше або дорівнює.

>

Більше.

>=

Більше або дорівнює.

=

Дорівнює.

<>

Не дорівнює.

Використання символів узагальнення у правилах перевірки

У правилах перевірки можна використовувати символи узагальнення. Пам'ятайте, що програма Access підтримує два набори символів узагальнення: ANSI-89 і ANSI-92. У кожному з цих стандартів використовується власний набір символів узагальнення.

За замовчуванням для всіх файлів ACCDB та MDB використовується стандарт ANSI-89.

Виконавши наведену нижче процедуру, можна змінити для бази даних стандарт ANSI на стандарт ANSI-92.

  1. На вкладці Файл виберіть пункт Параметри.

  2. У діалоговому вікні Параметри Access виберіть пункт Засоби конструювання об'єктів.

  3. У розділі Конструктор запитів у полі Сумісний синтаксис SQL Server (ANSI 92) виберіть Ця база даних.

Щоб отримати докладніші відомості про використання символів узагальнення та стандартів ANSI для SQL, див. статтю Довідка щодо символів узагальнення Access.

На початок сторінки

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

Потрібні додаткові параметри?

Ознайомтеся з перевагами передплати, перегляньте навчальні курси, дізнайтесь, як захистити свій пристрій тощо.

Спільноти допомагають ставити запитання й відповідати на них, надавати відгуки та дізнаватися думки висококваліфікованих експертів.