Categories Взаємодія в роботі

Додавання поля підстановки або поля списку значень у програмі Access

Важливо Служби Access 2010 та 2013 видаляються з наступного випуску SharePoint. Рекомендується не створювати нові веб-програми, а перенести існуючі програми на іншу платформу, наприклад Microsoft Power Apps.

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

Поле підстановки використовується для пошуку в таблиці значень, які можна використовувати в іншій таблиці. Поле підстановки може бути джерелом значень для списку, що розкривається, і використовуватися для спрощення введення даних у поле. Нехай, наприклад, ви хочете створити список 50 штатів США, щоб користувачі могли вибирати штат у списку, а не вводити його назву. За допомогою майстра підстановок Access можна створити поле підстановки для назви штату.

У цій статті

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

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

Використання майстра підстановок у програмі Access:

  1. У класичному додатку Access відкрийте таблицю як конструктора.
  2. У першому порожньому рядку списку полів введіть назву нового поля підстановки та клацніть Підстановка у стовпці Тип даних. Буде запущено майстер підстановок.

Важливо: У програмі Access слід відразу ж після додавання поля налаштувати для нього тип даних "Підстановка". Якщо ви зміните тип даних поля на тип "Підстановка", вам не вдасться зберегти зміни структури таблиці, навіть якщо в полі не було значень. Це обмеження поширюється лише на веб-програму.

Примітка: Найкраще встановити прапорець Заборонити видалення, якщо існують відповідні записи.оскільки при цьому збережеться цілісність даних. Застосовувати інші параметри слід з обережністю.

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

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

    У класичному додатку Access відкрийте таблицю як конструктора.

Важливо: У веб-застосунку потрібно використовувати нове поле. Якщо ви зміните тип даних поля на тип "Підстановка", вам не вдасться зберегти зміни структури таблиці, навіть якщо в полі не було значень.

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

У наступному поданні:

  • Для поля Зона доставки використовується елемент керування з автозаповненням. Як тільки користувач введе першу або кілька перших літер зони, буде відображено першу відповідність у списку. Елемент керування автозаповненням слід застосовувати, якщо користувачі вже знають, що вони шукають, і не хочуть повністю переглядати довгий список. Для отримання додаткових відомостей див. у статті Додавання елемента керування автозаповненням у виставу.
  • Для поля Штат використовується елемент керування "поле зі списком". Натисніть кнопку зі стрілкою вниз, щоб переглянути весь список значень.Поле зі списком слід застосовувати, коли користувачі повинні бачити всі варіанти вибору. Щоб отримати додаткові відомості, див. Додавання поля зі списком до подання.

Додавання поля підстановки або поля списку значень у програмі Access - Dosvid.v.ua

У програмі Access можна створити багатозначне поле, яке містить кілька значень (до 100). Можна також створити поле підстановки, яке відображатиме зрозуміле для користувача значення, прив'язане до значення в іншому джерелі даних. При запиті підстановки чи багатозначного поля є унікальні рекомендації. Для отримання додаткових відомостей див. розділ Create або видалення багатозначного поля, а також Create або видалення поля підстановки.

У цій статті

  • Перегляд прив'язаного значення поля підстановки у запиті
  • Використання значення поля підстановки, що відображається в запиті
  • Використання багатозначного поля у запиті
  • Додавання умов у багатозначне поле у ​​запиті
  • Додавання кількох умов у багатозначне поле у ​​запиті
  • Групування та підрахунок багатозначного поля у запиті
  • Використання запиту на додавання з багатозначним полем
  • Використання запиту на оновлення з багатозначним полем
  • Використання запиту Delete із багатозначним полем

Перегляд прив'язаного значення поля підстановки у запиті

Значення поля підстановки за замовчуванням автоматично відображається у поданні таблиці запитів. Під час створення запиту цю поведінку можна перевизначити, щоб замість неї відображалося прив'язане значення. У цьому прикладі припустимо, що ви хочете побачити пов'язане значення поля підстановки в таблиці Штаб-квартира, яка шукає назву штату Нова Англія.

  1. Відкрийте запит у режимі конструктора.
  2. У цьому прикладі додайте таблиці Headquarters і NewEngland . Дві таблиці мають бути з'єднані.

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

Використання значення поля підстановки, що відображається в запиті

Під час створення поля підстановки створюється з'єднання між значенням Bound та Display. Хоча ви не можете безпосередньо використовувати значення Display у запиті, ви можете використовувати відповідне значення з іншого джерела даних. У цьому прикладі припустимо, що ви хочете використовувати відображуване значення поля підстановки NEState у таблиці Headquarters у запиті як критерії.

  1. Відкрийте запит у режимі конструктора.
  2. У цьому прикладі додайте таблиці Headquarters і NewEngland . Дві таблиці мають бути з'єднані. Для отримання додаткових відомостей див. у статті Об'єднання таблиць та запитів.
  3. Перетягніть поля в сітку запиту. У цьому прикладі перетягніть місто з таблиці "Штаб-квартира" у перший стовпець, NEState з таблиці "Штаб-квартира" у другий стовпець, а stateName з таблиці NewEngland – у третій стовпець.
  4. Очистіть поле Показати перевірка поля StateName у сітці запиту.
  5. У сітці запитів у розділі StateName у рядку Умови введіть Vermont.

Результат Відображається лише рядок, що містить Вермонт .

Використання багатозначного поля у запиті

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

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

  1. Відкрийте запит у режимі конструктора.
  2. У цьому прикладі додайте таблицю Проблеми .
  3. Перетягніть поля у сітку конструктора запиту. У цьому прикладі перетягніть поля Title і AssignedTo із багатозначним значенням.
  4. На вкладці Конструктор у групі Результати натисніть кнопку Виконати.

Результат Як і слід було очікувати, в одному стовпці відображається поле Title , а в другому – багатозначне поле AssignedTo :

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

  1. Відкрийте запит у режимі конструктора.
  2. У цьому прикладі додайте таблицю Проблеми .
  3. Перетягніть поля у сітку запиту. У цьому прикладі перетягніть поля Title і AssignedTo.Value Multivalued. Формат. Value додає властивість Value у вигляді рядка . Значення поля AssignedTo .
  4. На вкладці Конструктор у групі Результати натисніть кнопку Виконати.

Результат Дані розташовані таким чином, що поле Title повторюється, а кожне значення у багатозначному полі AssignedTo відображається у відповідному рядку:

Додавання умов у багатозначне поле у ​​запиті

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

Додавання умов, що відображають усі значення в багатозначному полі в одному рядку

Access спочатку створює результуючий набір, потім додає умови.

  1. Відкрийте запит у режимі конструктора.
  2. У цьому прикладі додайте таблицю Проблеми .
  3. Перетягніть поля у сітку запиту. У цьому прикладі перетягніть поля Title , AssignedTo multivalued та AssignedTo.Value multivalued.
  4. Очистіть поле Показати перевірка поля AssignedTo.Value у сітці запиту.
  5. У сітці запитів у розділі AssignedTo.Value у рядку Умови введіть "NOT "David Hamilton".

Результат Три проблеми, які не призначені Девіду Гамільтону, відображаються у значенні за замовчуванням.

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

Access спочатку створює плоский результативний набір, а потім додає умови.

  1. Відкрийте запит у режимі конструктора.
  2. У цьому прикладі додайте таблицю Проблеми .
  3. Перетягніть поля у сітку запиту. У цьому прикладі перетягніть поля Title і AssignedTo.Value multivalued.
  4. У сітці запитів у розділі AssignedTo.Value у рядку Умови введіть NOT "David Hamilton".

Результат Кожна проблема, не призначена Девід Гамільтон, відображається в плоских значеннях.

Додавання кількох умов у багатозначне поле у ​​запиті

Іноді потрібно знайти збіг за кількома значеннями багатозначному полі. Наприклад, припустимо, що ви хочете побачити ті проблеми, в яких "Келлі Роллі" і "Ліза Міллер" входять до значень у полі AssignedTo

  1. Відкрийте запит у режимі конструктора.
  2. У цьому прикладі додайте таблицю Проблеми .
  3. Перетягніть поля у сітку запиту. У цьому прикладі перетягніть поля Title і AssignedTo із багатозначним значенням.
  4. У сітці запитів у розділі AssignedTo у рядку Умови введіть "Kelly Rollin" та "Lisa Miller".
  5. На вкладці Конструктор у групі Результати натисніть кнопку Виконати.

Результат Відображаються ті дві проблеми, які призначені "Келлі Ролін" та "Ліза Міллер".

Групування та підрахунок багатозначного поля у запиті

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

Підрахунок кількості проблем, призначених кожному користувачеві

  1. Відкрийте запит у режимі конструктора.
  2. У цьому прикладі додайте таблицю Проблеми .
  3. Перетягніть поля в сітку запиту. У цьому прикладі перетягніть assignedTo.Value у перший стовпець, а title – У другий стовпець.
  4. На вкладці Конструктор у групі Показати або приховати натисніть кнопку Підсумки. У сітці запиту з'явиться рядок Підсумок . Група По відображається за умовчанням у комірці Усього під кожним полем запиту.
  5. У сітці запитів у розділі Заголовок у рядку Підсумок натисніть кнопку Кількість.
  6. На вкладці Конструктор у групі Результати натисніть кнопку Виконати.

Результат Кількість проблем, призначених кожному користувачеві, відображається у плоскій поданні.

Підрахунок кількості користувачів, призначених для кожної проблеми

  1. Відкрийте запит у режимі конструктора.
  2. У цьому прикладі додайте таблицю Проблеми .
  3. Перетягніть поля в сітку запиту. У цьому прикладі перетягніть заголовок у перший стовпець, а AssignedTo – У другий стовпець.
  4. На вкладці Конструктор у групі Показати або приховати натисніть кнопку Підсумки. У сітці запиту з'явиться рядок Підсумок . Group By відображається за умовчанням у комірці Усього у полі Title у запиті. Вираз за замовчуванням відображається в комірці Усього у полі AssignedTo , тому що не можна виконати операцію Group By безпосередньо в багатозначному полі, тільки . Поле значення.
  5. У сітці запитів у розділі AssignedTo у рядку Усього натисніть кнопку Кількість.
  6. На вкладці Конструктор у групі Результати натисніть кнопку Виконати.

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

Використання запиту на додавання з багатозначним полем

Одне значення можна вставити в багатозначне поле за допомогою запиту Додавання. Наприклад, припустимо, що ви хочете додати "Том Майклс" у багатозначне поле AssignedTo у таблиці Issues.

Примітка. Це єдиний тип додавання запиту, який працює з багатозначним полем.

  1. Відкрийте запит у режимі конструктора.
  2. Додати таблицю Проблеми .
  3. На вкладці Конструктор натисніть кнопку Додати.
  4. У діалоговому вікні Додавання виберіть Проблеми та натисніть кнопку ОК.
  5. У рядку Додати до сітки конструктора виберіть AssignedTo.Value.
  6. У рядку Поле сітки конструктора введіть "Том Майклс".
  7. Щоб обмежити операцію додавання певних проблем, додайте поле в сітку Конструктор, наприклад Заголовок, видаліть Заголовок з рядка Додати до , а потім введіть умови, наприклад "Проблема 3".
  8. На вкладці Конструктор у групі Результати натисніть кнопку ВиконатиAccess може попросити вас підтвердити, чи потрібно додати вибраний рядок. Так , щоб вставити рядок або кнопку Ні для скасування.

Результат "Том Майклс" тепер додано до поля AssignedTo для питання 3.

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

INSERT INTO [NewIssues] ( ID, Title, AssignedTo ) SELECT Issues.ID, Issues.Title, Issues.AssignedTo FROM Issues;

Використання запиту на оновлення з багатозначним полем

Запит на оновлення можна використовувати, щоб змінити значення в багатозначному полі на інше.У цьому прикладі ви хочете оновити багатозначне поле AssignedTo, щоб замінити "Kelly Rollin" на "Lisa Miller".

  1. Відкрийте запит у режимі конструктора.
  2. Додати таблицю Проблеми .
  3. На вкладці Конструктор натисніть кнопку Оновити.
  4. Перетягніть assignedTo.Value у сітку запиту.
  5. У рядку Оновити до введіть "Ліза Міллер".
  6. У рядку Умови введіть "Kelly Rollin".
  7. На вкладці Конструктор у групі Результати натисніть кнопку Виконати. Access може попросити вас підтвердити, чи потрібно додати вибраний рядок. Натисніть кнопку Так , щоб вставити рядок або кнопку Ні для скасування.

Результат Ліза Міллер замінює Келлі Ролліна в полі AssignedTo для відповідних проблем.

Використання запиту Delete із багатозначним полем

При роботі з таблицею, що містить багатозначне поле, можна використовувати запит на видалення для видалення записів, що містять певне значення в багатозначному полі, або для видалення певного значення багатозначного поля у всіх записах в таблиці. У цьому прикладі припустимо, що ви хочете видалити "Девід Гамільтон" з таблиці "Проблеми".

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

Видалення певного значення з багатозначного поля у всіх записах

  1. На вкладці Створення у групі Запити натисніть кнопку Конструктор запитів.
  2. Додати таблицю Проблеми .
  3. Відкрийте запит у режимі конструктора.
  4. На вкладці Конструктор натисніть кнопку Видалити.
  5. У рядку Умови введіть "Девід Гамільтон".
  6. На вкладці Конструктор у групі Результати натисніть кнопку Виконати. Access може попросити вас підтвердити видалення записів. Натисніть кнопку Так , щоб видалити записи, або кнопку Ні для скасування.

Результат Девід Гамільтон видаляється з усіх відповідних проблем.

Видалення записів, що містять певне значення у багатозначному полі

  1. На вкладці Створення у групі Запити натисніть кнопку Конструктор запитів.
  2. Додати таблицю Проблеми .
  3. Відкрийте запит у режимі конструктора.
  4. На вкладці Конструктор клацніть Видалити групу.
  5. На вкладці Конструктор у групі Результати клацніть стрілку в розділ Вид та виберіть пункт Подання SQL.
  6. Введіть наступну інструкцію SQL:
DELETE FROM Issues WHERE (((Issues.AssignedTo.Value)="David Hamilton"));

Результат Усі проблеми, за яких призначено Девіда Гамільтона, видаляються.

Додавання поля підстановки або поля списку значень у програмі Access - Dosvid.v.ua

Зробити простішим введення значень у полі дозволяє операція підстановки. Використовуючи цю операцію, можна вибрати значення поля зі списку. Список значень може бути як фіксованим, так і утримуватися в таблиці або запиті. Сформувати стовпець підстановок для поля допомагає Майстер підстановок (Lookup Wizard). Давайте створимо стовпець підстановок для поля "КодКлієнта" у таблиці "Список розсилки оповіщень". Це дасть нам можливість при введенні даних до цієї таблиці вводити не коди клієнтів, які ми не знаємо, а вибирати зі списку назву організації, в якій працює ця особа. Для використання Майстра підстановок (Lookup Wizard) необхідно:

  1. Відкрити таблицю "Постачальники підприємства" у режимі Конструктора.
  2. Виділити поле "КодКлієнта" та вибрати зі списку в стовпці Тип даних (Data Туре) значення Майстер підстановок (Lookup Wizard) (мал.2.15).

Мал. 2.15. Перше діалогове вікно Майстри підстановок

Мал. 2.16. Друге діалогове вікно Майстри підстановок

Мал. 2.17. Третє діалогове вікно Майстри підстановок

Мал. 2.18. Четверте діалогове вікно Майстри підстановок

Мал. 2.19. П'яте діалогове вікно Майстри підстановок

Застосовувати операцію підстановки можна лише до полів, що містять текстові та числові дані, а також до логічних полів. Інші типи полів не можуть використовувати підстановку.

На нижній панелі вікна Конструктора таблиць знаходиться вкладка Підстановка (Lookup), у якій визначаються властивості поля, які стосуються підстановки. Якщо стовпець підстановки для поля не визначено, значення властивості Тип елемента керування (Display Control) для текстових та числових полів одно Поле (Text Box), для логічного типу – Прапорець (Check Box). При цьому інші властивості на вкладці Підстановка (Lookup) відсутні.

Якщо ви бажаєте додати до поля стовпець підстановок, то встановіть для якості Тип елемента керування (Display Control) значення Поле зі списком (Combo Box) або Список (ListBox). Для перегляду таблиці як Таблиця ці поля абсолютно рівноцінні, різняться вони у формах. Поле Список відображається на екрані відразу у вигляді скрольованого списку значень, а Поле зі списком відображається у вигляді списку, що випадає. (Додаткові відомості див. в розділі "Вбудовані елементи керування" в розділі 9.) ]

В цьому випадку на вкладці Підстановка (Lookup) з'являється низка властивостей, що дозволяють керувати параметрами підстановки (рис. 2.20).

Мал. 2.20. Стовпець підстановок у таблиці "Список розсилки оповіщень" Опис цих властивостей наведено у табл. 2.5.

Найменування якостіОпис
Тип джерела рядків (Row Source Type)Властивість визначає тип джерела рядків для списку чи поля зі списком. Може приймати три значення: Таблиця або запит (Table/Query), Список значень (Value List) та Список полів (Field List).
Джерело рядків (Row Source)Властивість визначає джерело даних елемента керування. При виборі типу джерела рядків Список значень (Value List) воно є список елементів, що розділяються точкою з комою (;), інакше — ім'я таблиці чи запиту чи інструкцію мови SQL.
Приєднаний стовпець (Bound Column)Властивість визначає номер стовпця списку або поля зі списком, що містить значення керування. Якщо ця властивість має значення 0, то поле передається номер рядка списку, якщо 1 і більше, то поле передаються дані з відповідного стовпця списку. Значення цієї властивості не може перевищувати значення властивості Число стовпців (Column Count).
Число стовпців (Column Count)Властивість визначає кількість стовпців, що виводяться у списку або полі зі списком. Якщо джерелом рядків використовується Таблиця чи запит (Table/Query), то списку будуть виводитися стовпці таблиці, починаючи з першого і закінчуючи тим, який зазначений у значенні даного властивості. Якщо в якості джерела рядків використовується список значень, то в списку виводитиметься вказана кількість стовпців, а дані в них будуть розміщуватися рядково в послідовності, вказаній у властивості Джерел рядків (Row Source).
Назва стовпців (Column Heads)Властивість визначає, чи використовуються перші елементи списку або поля зі списком як заголовки стовпців.
Ширина стовпців (Column Widths)Властивість визначає ширину шпальт списку або поля зі списком. При використанні кількох стовпців значення розділяються крапкою з комою (;).Задавши нульове значення, можна приховати стовпець.
Число рядків списку (List Rows)Властивість визначає максимальну кількість рядків поля зі списком. Якщо кількість елементів списку перевищуватиме вказану кількість рядків, у списку з'явиться лінійка прокручування.
Ширина списку (List Width)Властивість визначає ширину списку, що розкривається, для поля зі списком.
Обмежитись списком (Limit to List)Властивість визначає, чи можуть вводитись у поле зі списком значення, які не є елементами списку.

Таблиця 2.5. Властивості підстановки для поля зі списком

Якщо значення властивості Тип елемента керування (Display Control) одно Список (List Box) (а це можливо тільки для текстових та числових полів), на вкладці Підстановка з'являються лише властивості, зазначені у табл. 2.5 зірочкою (*).