Вирази дають змогу виконувати безліч дій із даними. Наприклад, ви можете визначити, скільки днів минуло після доставки замовлення, або об’єднати поля Ім’я та Прізвище в поле ПовнеІм’я. У розділах нижче наведено покрокові вказівки зі створення виразу.
У цій статті
Обчислення значень для елементів керування у формах і звітах
У разі використання виразу як джерела даних для елемента керування ви створюєте обчислюваний елемент керування. Наприклад, ви маєте звіт із багатьма інвентарними записами та бажаєте створити в нижньому колонтитулі звіту підсумок, який міститиме суму всіх елементів звіту.
Щоб обчислити підсумок, розмістіть у нижньому колонтитулі звіту елемент керування текстовим полем і встановіть для властивості ControlSource такий вираз:
=Sum([table_field])
У цьому разі table_field – це ім’я поля, яке містить значення проміжних підсумків. Це поле може розташовуватися в таблиці або запиті. Функція Sum обчислює підсумок набору значень table_field.
ПРОЦЕДУРА
-
В області переходів клацніть правою кнопкою миші форму, яку потрібно змінити, і в контекстному меню виберіть пункт Режим розмітки або Режим конструктора.
-
Виберіть елемент керування, у який потрібно ввести вираз.
-
Якщо аркуш властивостей ще не відображається, натисніть клавішу F4.
-
Щоб створити вираз вручну, на вкладці Дані вікна властивостей виберіть властивість текстового поля ControlSource і введіть =, а потім – решту виразу. Наприклад, для обчислення наведеного вище проміжного підсумку введіть =Sum([table_field]), переконавшись у тому, що замість table_field указано назву відповідного поля.
-
Щоб створити вираз за допомогою побудовника виразів, натисніть кнопку Побудувати в полі властивості.
Після введення виразу вікно властивостей виглядатиме приблизно так:
Використання виразів як умов запиту
Результати виконання запиту можна уточнити за допомогою умов. Вони вводяться як вираз, а Access повертає лише рядки, які відповідають виразу.
Наприклад, вам потрібно переглянути всі замовлення, доставлені протягом перших трьох місяців 2017 року. Щоб ввести умови, у клітинці Умови стовпця "Дата й час" запиту введіть наведений нижче вираз. У цьому прикладі використовується стовпець "Дата й час" з іменем ДатаДоставки. Щоб визначити діапазон дат, введіть умови таким чином:
Between #1/1/2017# And #3/31/2017#
Стовпець ДатаДоставки виглядатиме приблизно так:
Кожний запис у таблиці "Замовлення", значення якого в стовпці ДатаДоставки входить до вказаного діапазону дат, включається до результатів запиту. Зауважте, що у виразі дати виділяються знаками "дієз" (#) з обох боків. Access розглядає значення, введене зі знаками "дієз", як тип даних "Дата й час". Така обробка відповідних даних дає змогу обчислювати ці значення, наприклад віднімати одну дату від іншої.
ПРОЦЕДУРА
-
В області переходів клацніть правою кнопкою миші запит, який слід змінити, і виберіть у контекстному меню пункт Режим конструктора.
-
Клацніть клітинку Умови у стовпці, в якому слід ввести умови.
-
Щоб створити вираз вручну, введіть вираз умови. Не ставте перед виразом умови оператор =.
-
Щоб створити вираз за допомогою побудовника виразів, на стрічці натисніть кнопку Конструктор, а потім у групі Настроювання запиту натисніть кнопку Побудовник .
Якщо для редагування виразу потрібна більша область, помістіть курсор у клітинку Умови та натисніть сполучення клавіш Shift+F2 для відображення вікна Масштаб.
Порада Щоб текст було зручніше читати, виберіть Шрифт.
Створення обчислюваного поля в запиті
Припустімо, що під час створення запиту потрібно відобразити результати обчислення за допомогою інших полів запиту. Щоб створити обчислюване поле, потрібно ввести вираз у пусту клітинку рядка Поле в запиті. Наприклад, якщо запит містить поля Кількість і Ціна за одиницю, їх можна помножити, щоб створити обчислюване поле для Загальної ціни, ввівши такий вираз у рядку Поле:
Extended Price: [Quantity] * [Unit Price]
Текст Extended Price: перед виразом надає новому стовпцю ім’я Загальна ціна. Це ім’я також часто називають "псевдонімом". Якщо іншого псевдоніма не надано, Access створює його автоматично, наприклад Expr1..
Під час виконання запиту Access здійснює обчислення в кожному рядку, як показано на ілюстрації нижче.
ПРОЦЕДУРА
-
В області переходів клацніть правою кнопкою миші запит, який слід змінити, і виберіть у контекстному меню пункт Режим конструктора.
-
Клацніть клітинку Поле у стовпці, в якому слід створити обчислюване поле.
-
Щоб створити вираз уручну, введіть його з клавіатури.
Не ставте перед виразом умови оператор = ; натомість починайте вираз з описового підпису та двокрапки. Наприклад, введіть Extended Price:, щоб створити підпис для виразу, який створює обчислюване поле з іменем Загальна ціна. Введіть умову виразу після двокрапки.
-
Щоб створити вираз за допомогою побудовника виразів, на вкладці Конструктор у групі Настроювання запиту натисніть кнопку Конструктор.
Створення обчислюваного поля в таблиці
У застосунку Access обчислюване поле можна створювати в таблиці. Це дає змогу не створювати окремий запит для обчислень. Наприклад, якщо користувач має таблицю, у якій зазначено кількість, ціни та податкові ставки для кожного елемента замовлення, можна додати обчислюване поле із загальної ціною, наприклад:
[Quantity]*([UnitPrice]+([UnitPrice]*[TaxRate]))
Обчислення можуть не включати поля з інших таблиць або запитів. Результати обчислення призначені лише для читання.
ПРОЦЕДУРА
-
Відкрийте таблицю, двічі клацнувши її в області переходів.
-
Прокрутіть по горизонталі до останнього стовпця таблиці справа, а потім клацніть заголовок стовпця Клацніть, щоб додати.
-
Відобразиться список. Виберіть у ньому пункт Обчислюване поле, а потім виберіть потрібний тип даних. В Access відобразиться побудовник виразів.
-
Введіть обчислення, яке потрібно використати в цьому полі, наприклад:
[Quantity] * [Unit Price]
В обчислювальному полі не починайте вираз зі знака рівності (=).
-
Натисніть кнопку OK.
У програмі Access буде додано обчислюване поле та виділено заголовок поля, де можна ввести ім’я поля.
-
Введіть ім’я обчислюваного поля, а потім натисніть клавішу Enter.
Установлення стандартних значень для поля таблиці
За допомогою виразу можна вказати стандартне значення для поля в таблиці, тобто значення, яке програма Access використовує для нових записів, якщо не надано інше значення. Наприклад, припустімо, що кожного разу, коли додається новий запис, потрібно автоматично вставляти дату й час у поле "Дата_Замовлення". Для цього можна використати такий вираз:
Now()
ПРОЦЕДУРА
-
В області переходів двічі клацніть таблицю, яку потрібно змінити.
Таблиця відкриється у вікні табличного подання даних.
-
Виберіть поле, яке потрібно змінити.
-
На стрічці натисніть кнопку Поля таблиці, а потім у групі Властивості натисніть кнопку Значення за промовчанням. В Access відобразиться побудовник виразів.
-
Введіть вираз у поле, поставивши перед виразом знак рівності (=).
Примітка. Якщо елемент керування зв’язується з полем таблиці, а елемент керування та поле містять стандартні значення, перевагу має стандартне значення елемента керування.
Установлення стандартних значень для елементів керування
Вираз також можна використовувати у властивості Значення за промовчанням елемента керування. Властивість Значення за промовчанням елемента керування подібна до властивості Значення за промовчанням поля таблиці. Наприклад, якщо потрібно використати поточну дату як значення за промовчанням для текстового поля "Дата замовлення", можна ввести такий вираз:
Date()
У цьому виразі використовується функція Date для повернення поточної дати без часу. Якщо текстове поле зв’язується з полем таблиці, а поле має значення за промовчанням, значення за промовчанням елемента керування має перевагу перед полем таблиці. Зазвичай краще встановлювати властивість Значення за промовчанням для поля в таблиці. У такому разі, якщо кілька елементів керування для різних форм базуються на тому самому полі таблиці, до кожного елемента керування застосовуватиметься те саме значення за промовчанням, що допоможе забезпечити узгодження даних, які вводяться в кожну форму.
ПРОЦЕДУРА
-
В області переходів клацніть правою кнопкою миші форму або звіт, які потрібно змінити, і виберіть у контекстному меню пункт Режим конструктора або Режим розмітки.
-
Виберіть елемент керування, який потрібно змінити.
-
Якщо аркуш властивостей ще не відображається, натисніть клавішу F4.
-
Відкрийте вкладку Усі вікна властивостей і виберіть поле властивості Значення за промовчанням.
-
Введіть вираз або натисніть кнопку Побудувати у полі властивості, щоб створити вираз за допомогою побудовника виразів.
Додавання правила перевірки до поля або запису таблиці
Вирази дуже корисні для перевірки даних під час їхнього введення в базу даних, оскільки вони запобігають введенню неприпустимих даних. У таблицях можна створювати два види правил перевірки: правила перевірки поля, які забороняють користувачам вводити неприпустимі дані в одне поле, і правила перевірки запису, які забороняють користувачам створювати записи, що не відповідають введеним умовам. Обидва види правил перевірки створюються за допомогою виразів.
Наприклад, ви маєте таблицю Запаси з полем Наявні одиниці, і вам потрібно встановити правило, яке вимагає від користувачів вводити значення більші або рівні нулю. Іншими словами, запаси не можуть бути від’ємним числом. Цього можна досягти, використовуючи для правила перевірки в полі Наявні одиниці такий вираз:
>=0
ПРОЦЕДУРА: введення правила перевірки поля або запису
-
В області переходів двічі клацніть таблицю, яку потрібно змінити. Таблиця відкриється у вікні табличного подання даних.
-
Виберіть поле, яке слід змінити, для правила перевірки поля.
-
На стрічці натисніть кнопку Поля таблиці, а потім у групі Перевірка поля натисніть кнопку Перевірка та виберіть пункт Правило перевірки поля або Правило перевірки. В Access відобразиться побудовник виразів.
-
Розпочніть введення потрібних умов. Наприклад, для правила перевірки поля, яке вимагає, щоб усі значення були більші або дорівнювали нулю, введіть таке:
>=0
Перед цим виразом не слід вводити знак рівності (=).
Вирази правила перевірки мають логічний тип, тобто повертають значення True або False для всіх вхідних значень. Правило перевірки має повертати значення True, інакше Access не збереже введені дані та відобразить повідомлення перевірки з помилкою. У цьому прикладі, якщо ви введете в поле Наявні одиниці значення менше нуля, правило перевірки матиме значення False, і Access не прийме таке значення. Якщо ви не ввели повідомлення перевірки, як описано в розділі нижче, Access відображає власне повідомлення, указуючи, що введене значення заборонено правилом перевірки для цього поля.
ПРОЦЕДУРА: введення повідомлення перевірки
Щоб зробити базу даних зручнішою для користування, можна ввести користувацькі повідомлення про перевірки. Ці повідомлення замінюють стандартні повідомлення Access, які відображаються, коли дані не відповідають правилу перевірки. За допомогою користувацьких повідомлень про перевірки можна надавати певну інформацію, яка допомагає користувачеві вводити правильні дані, наприклад, "Значення наявних одиниць не може бути від'ємним числом".
-
В області переходів двічі клацніть таблицю, яку потрібно змінити.
Таблиця відкриється у вікні табличного подання даних.
-
Виберіть поле, до якого додано правило перевірки, щоб призначити повідомлення перевірки поля.
-
На стрічці натисніть кнопку Поля таблиці, а потім у групі Перевірка поля натисніть кнопку Перевірка та виберіть пункт Повідомлення про перевірку поля або Повідомлення про перевірку.
-
У діалоговому вікні Введення повідомлення для перевірки введіть повідомлення, яке має відображатися, коли дані не відповідають правилу перевірки, а потім натисніть кнопку ОК.
Додавання правила перевірки до елемента керування
Крім полів і записів таблиці, властивість Правило перевірки мають також елементи керування, які приймають вирази. Наприклад, ви використовуєте форму, щоб вводити діапазон дат для звіту, і вам потрібно вказувати дату не раніше за 01.01.2017. Ви можете встановити властивості Правило перевірки та Текст перевірки для текстового поля, у якому введено дату початку:
Властивість |
Настройка |
---|---|
Правило перевірки |
>=#01.01.2017# |
Текст перевірки |
Не можна вводити дату, ранішу за 01.01.2017. |
Якщо спробувати ввести дату, раніших за 01.01.2017, відобразиться повідомлення з текстом властивості Текст перевірки . Якщо в поле властивості Текст перевірки не введено жодного тексту, Access відобразить загальне повідомлення. Натиснувши кнопку OK, ви повернетеся до текстового поля.
Якщо встановити правило перевірки для поля таблиці, воно діятиме в усій базі даних, де змінюється це поле. Однак, якщо правило перевірки встановлюється для елемента керування форми, воно працює лише під час використання форми. Установлення правил перевірки окремо для полів таблиці та окремо для елементів керування форм може бути корисне, якщо потрібно встановити різні правила перевірки для різних користувачів.
ПРОЦЕДУРА
-
В області переходів клацніть правою кнопкою миші форму або звіт, які потрібно змінити, і виберіть у контекстному меню пункт Режим конструктора або Режим розмітки.
-
Клацніть правою кнопкою миші елемент керування, який потрібно змінити, і виберіть у контекстному меню пункт Властивості. Відобразиться вікно властивостей елемента керування.
-
Відкрийте вкладку Усі та виберіть поле властивості Правило перевірки.
-
Введіть вираз або натисніть кнопку Побудувати у полі властивості, щоб створити вираз за допомогою побудовника виразів.
Не ставте перед виразом оператор =.
-
Для змінення тексту, який відображається під час введення даних, що не відповідають правилу перевірки, введіть потрібний текст у властивості Текст перевірки.
Групування та сортування даних у звітах
В області Групування, сортування й підсумок можна визначити рівні групування та порядок сортування даних у звіті. Зазвичай групування або сортування відбуваються за полем, вибраним у списку. Проте якщо потрібно виконати групування або сортування на основі обчислюваного значення, можна ввести вираз для нього.
Групування – це процес поєднання стовпців, які містять повторювані значення. Наприклад, база даних містить відомості про обсяги продажів філіалів у різних містах, і один із звітів у базі даних має назву "Продажі за містом". Запит, який надає дані для цього звіту, групує їх за значеннями міст. Цей вид групування може полегшити читання й сприйняття даних.
Сортування – це процес визначення порядку рядків (записів) у результатах запиту. Наприклад, можна відсортувати записи за значеннями первинних ключів (або іншим набором значень в іншому полі) за зростанням чи спаданням або відсортувати їх за одним чи кількома символами у визначеному порядку, наприклад за алфавітом.
ПРОЦЕДУРА: додавання групування та сортування до звіту
-
В області переходів клацніть правою кнопкою миші звіт, який потрібно змінити, і в контекстному меню виберіть пункт Режим розмітки або Режим конструктора.
-
На стрічці натисніть кнопку Конструктор звітів, а потім у групі Групування & підсумків натисніть кнопку Групувати & сортування. Область Групування, сортування та підсумки відображається під звітом.
-
Щоб додати до звіту рівень групування, клацніть Додати групу.
-
Щоб додати до звіту порядок сортування, клацніть Додати сортування.
Новий рівень групи або порядок сортування відображаються на панелі разом зі списком полів, які надають дані для звіту. На цьому рисунку зображено типовий новий рівень групи (групування за категорією) і порядок сортування (сортування за виробником), а також список, який містить поля, доступні для групування та сортування:
-
Під списком доступних полів клацніть вираз, щоб запустити побудовник виразів.
-
Введіть вираз у поле виразу (верхнє поле) побудовника виразів. Пам’ятайте, що вираз має починатися з оператора рівності (=).
ПРОЦЕДУРА: додавання виразу до наявного групування або сортування
-
В області переходів клацніть правою кнопкою миші звіт, який потрібно змінити, і в контекстному меню виберіть пункт Режим розмітки або Режим конструктора.
-
Виберіть рівень групи або порядок сортування, який потрібно змінити.
-
Натисніть стрілку вниз поруч із написом Групувати за (для рівнів групування) або Сортувати за (для порядку сортування). Відобразиться список із доступними полями.
-
У нижній частині списку з доступними полями клацніть вираз, щоб запустити побудовник виразів.
-
Введіть вираз у поле виразу (верхнє поле) побудовника виразів. Пам’ятайте, що вираз має починатися з оператора рівності (=).
Керування запуском дій макросів
Інколи потрібно виконати дію або послідовність дій макросу, лише якщо певна умова істинна. Наприклад, дію макросу потрібно запускати, лише якщо значення текстового поля більше або дорівнює 10. Для встановлення цього правила в макросі використовується блок Якщо для визначення відповідної умови.
У цьому прикладі текстове поле має ім’я "Товари". Вираз, який установлює умову:
[Items]>=10
ПРОЦЕДУРА
-
В області переходів клацніть правою кнопкою миші макрос, який потрібно змінити, і виберіть у контекстному меню пункт Режим конструктора.
-
Клацніть блок Якщо, який потрібно змінити, або додайте блок Якщо з області каталогу дій.
-
Клацніть верхню лінію блоку Якщо.
-
Введіть умовний вираз у полі або натисніть кнопку Побудувати поруч із полем виразу, щоб почати використовувати побудовник виразів.
Вираз, що вводиться, має бути логічного типу, тобто мати значення True або False. Дії макросу в межах блоку Якщо виконуються, лише коли умова повертає значення True.
Див. також
Використання побудовника виразів