У цій статті пояснюється, як створити умовний (також відомі як логічні вирази) у програмі Access. Умовний вираз обчислює значення TRUE або FALSE, а потім повертає результат, який відповідає умові, що ви вказали. Якщо ви використовуєте функції в умовних виразах, ви також можете вказати дію для значень, які не відповідає умові у виразі. Наприклад, можна створити вираз, який знаходить усі продажі з відсотковим полем на 10 відсотків або меншу, а потім указати, що ці числа відображатимуться червоним шрифтом або заміняють значення з повідомленням.
У цій статті
Що таке умовне вираження?
Умовний вираз – це тип виразу, який перевіряє дані, щоб дізнатися, чи відповідає умова, а потім виконує дію залежно від результату. Наприклад, вираз може шукати значення дати пізніше, ніж дата початку, а потім відображати повідомлення про помилку під час спроби введення дати раніше визначеної дати початку.
Умовні вирази беруть таку саму форму та використовують однаковий основний синтаксис, як і інші вирази, і їх можна використовувати таким же чином, як і в інших виразах.
-
Для полів таблиці можна додати вираз до властивості правило перевірки поля. Користувачі мають потім введіть значення в полі, яке відповідає умовам у виразі. Наприклад, якщо ви використовуєте вираз, як-от >= #1/1/2000 # в полі "Дата й час", користувачі мають увести значення, що дорівнюють або новіші за 1 січня 2000.
-
Для елементів керування у формах можна додати вираз до властивості елемента керування " джерело " або " правило перевірки " в елементі керування. Зазвичай можна додати умовне вираження до властивості правило перевірки , а також додати вирази, які обчислюють значення для властивості Джерело елемента керування . Наприклад, за допомогою >= #1/1/2000 # у властивості правило перевірки елемента керування забороняє користувачам вводити неприпустиму дату. Використання виразу, наприклад Date () у властивості Джерело елемента керування відображає поточну дату як значення за замовчуванням.
-
Щоб отримати запити, можна додати умовне вираження до пустої клітинки в рядку поле або використати вираз у рядку критерії запиту. Під час використання виразу в рядку поля результати відображаються у вигляді стовпця в результатах запиту. Якщо ви використовуєте вираз як умови для наявного поля, вираз виконує роль фільтра та обмежує записи, які повертає запит.
Наприклад, цей вираз можна використовувати в рядку полів запиту: = IIf ([дата замовлення] <= #04/01/2018 #, [Дата замовлення], "замовлення, введене після 1 квітня"). Вираз визначає критерій дати (<= #04/01/2018 #). Під час виконання запиту відображаються всі значення дат, які відповідатимуть критерію, і будь-які значення дат, які не відповідатимуть умові, замінюються на повідомлення "ORDER, введене після 1 квітня". Кроки, описані в розділі Додавання виразу до запиту, пояснюють, як використовувати цей вираз у запиті.
Навпаки, за допомогою цього виразу в полі умови запиту повертає лише ті записи з датами, які відповідає критерію: Betміж #04/01/2018 # і #05/15/2018 #.
Щоб отримати докладні відомості про створення та використання виразів, ознайомтеся зі статтею навчитися створювати вирази.
Створення умовного виразу
У цьому розділі описано, як додати умовний вираз до таблиці, елемента керування у формі або звіті, а також запит. Кожний набір кроків використовує дещо інший вираз, щоб перевірити значення в полі "Дата й час", а також виконати дію, залежно від того, чи відповідає значення дати вказаним умовам.
Додавання виразу до поля таблиці
-
В області переходів клацніть правою кнопкою миші таблицю, яку потрібно змінити, і виберіть у контекстному меню пункт Конструктор.
-
У стовпці тип даних клацніть поле "Дата й час".
-
У розділі Властивості поляна вкладці загальні клацніть поле властивості правило перевірки та введіть такий вираз:
>= #01/01/2000 #
Примітка.: Вам не потрібно використовувати формат дати США. Ви можете використовувати формат дати для вашої країни або регіону або локалі. Однак, як показано, потрібно оточувати значення дати за допомогою знаків фунта (#).
-
Клацніть стовпець поруч із текстом перевірка та введіть цей текстовий рядок:
Дата має бути більшою за 1 січня 2000 р.
Знову ж таки, ви можете використовувати локальний формат дати.
-
Збережіть зміни та перейдіть у режим табличного подання даних. Щоб зробити це, клацніть правою кнопкою миші вкладку документа для таблиці та виберіть у контекстному меню пункт табличне подання даних .
-
Введіть значення дати в полі "Дата/час", що передує 1 січня 2000. У програмі Access відобразиться повідомлення, указане в полі властивості правило перевірки , і ви не можете вийти з поля, доки не введете значення, яке вираз повертає як TRUE.
Додавання виразу до елемента керування
-
В області переходів клацніть правою кнопкою миші форму, яку потрібно змінити, і виберіть у контекстному меню пункт Режим конструктора .
-
Клацніть правою кнопкою миші елемент керування, приєднаний до поля "Дата/час", а потім у контекстному меню виберіть пункт Властивості .
Відображається аркуш властивостей елемента керування.
-
На вкладці дані або на вкладці Усі клацніть поле поруч із пунктом правило перевірки та введіть такий вираз:
>= #01/01/2000 #
Примітка.: Вам не потрібно використовувати формат дати США. Ви можете використовувати формат дати для вашої країни або регіону або локалі. Однак, як показано, потрібно оточувати значення дати за допомогою знаків фунта (#).
-
Клацніть стовпець поруч із текстом перевірка та введіть цей текстовий рядок:
Дата має бути більшою за 1 січня 2000 р.
-
Збережіть зміни та поверніться до подання форми. Щоб зробити це, клацніть правою кнопкою миші вкладку документа, а потім у контекстному меню виберіть пункт подання форми .
Додавання виразу до запиту
-
В області переходів клацніть правою кнопкою миші запит, який потрібно змінити, і виберіть у контекстному меню пункт Конструктор.
-
Клацніть пусту клітинки в рядку поле в сітці конструктора та введіть такий вираз:
= IIf ([Field_Name] <= #04/01/2018 #, [Field_Name], "Дата пізніше, ніж 1 квітня 2018")
Під час введення виразу переконайтеся, що ви замінюєте обидва екземпляри Field_Name з іменем поля "Дата/час". Крім того, якщо таблиця не містить дат до 1 квітня 2018, змініть дати в виразі, щоб працювати з даними.
-
Збережіть зміни, а потім натисніть кнопку виконати , щоб переглянути результати.
Вираз працює таким: перший аргумент (= IIf ([Field_Name] <= #04/01/2018 #) указує умови, що дані мають відповідати – дати мають бути на або попередніх, ніж 1 квітня 2018. Другий аргумент ([Field_Name]) визначає, які користувачі бачать, коли умова має значення TRUE – дати в полі. Третій аргумент ("Дата пізніше, ніж 1 квітня 2018")) указує повідомлення про те, що користувачі бачать, коли дані не відповідатимуть умові.
Якщо Ви продовжите, пам'ятайте, що не всі умовні вирази використовують функцію IIf . Також слід пам'ятати, що функція IIf входить до складу виразу, що вимагає аргументів, а не самого виразу.
Щоб отримати докладніші відомості про вирази та способи їх використання, ознайомтеся зі статтею навчитися створювати вирази.
Приклади умовного виразу
Вирази в наведеній нижче таблиці демонструють кілька способів обчислення значень True і false. Ці вирази використовують функцію IIf (негайне If), щоб визначити, чи є умова істинною або помилковою, а потім повертати одне значення, якщо умова істинна, а інше значення, якщо умова має значення false.
Докладні відомості наведено в статті функція IIf .
Вираз |
Опис |
=IIf([Підтверджено]="Так";"Замовлення підтверджено";"Замовлення не підтверджено") |
Відображає повідомлення "ORDER підтверджене", якщо значення поля "підтверджено" є "так". в іншому разі відобразиться повідомлення "ORDER Not підтверджене". |
= IIf (IsNull ([країна/регіон]); ""; [країна/регіон]) |
Відображає пустий рядок, якщо поле "країна або регіон" має Null-значення; в іншому разі відобразиться значення поля "Країна/регіон". |
= IIf (IsNull ([область]); [місто] & "" & [поштовий індекс]; [місто] & "" & [регіон] & "" & [поштовий індекс]) |
Відображає значення полів "місто" та "поштовий індекс", якщо значення поля "регіон" має Null-значення; в іншому випадку відображає значення полів "місто", "регіон" і "поштовий індекс". |
= IIf (IsNull ([Обов'язкова дата]-[Дата доставки]), "перевірка відсутньої дати", [Обов'язкова дата]-[Дата доставки]) |
Відображає повідомлення "перевірка відсутньої дати", якщо результат віднімання значення поля "Дата доставки" з поля "Обов'язкова дата" має Null-значення; в іншому випадку відображає різницю між значеннями полів "Обов'язкова дата" та "Дата доставки". |