Якщо у вас довга форма з кількома елементами, іноді потрібно швидко "деталізувати", щоб переглянути додаткові відомості про один елемент. Це можна зробити в Access, зв'язавши форму з кількома елементами з формою з одним елементом. Якщо клацнути елемент у формі з кількома елементами, відкриється форма з одним елементом для відображення відомостей.
Примітки.:
-
Ця стаття не стосується веб-програм Access – виду бази даних, яку ви розробляєте за допомогою Access і публікуєте в Інтернеті.
-
Якщо ви мали на увазі щось інше за допомогою зв'язування, див. розділ Інші типи зв'язування форм у кінці цієї статті.
Створення форм
У більшості випадків дві форми в конфігурації деталізації базуються на одній таблиці або запиті. Якщо вам потрібно використати пару форм (одна з яких є таблицею даних або кількома елементами, а інша – форма з одним елементом або докладною), можна пропустити цей розділ. В іншому разі виконайте наведені нижче дії, щоб створити їх.
Створення форми таблиці або кількох елементів:
-
В області переходів виберіть таблицю або запит із потрібними даними у формі таблиці даних.
-
Натисніть кнопку Створити > Інші Forms, а потім виберіть пункт Кілька елементів або Таблиця даних залежно від потрібного типу.
-
Внесіть потрібні зміни в макет. Радимо видалити якомога більше стовпців, залишивши достатньо інформації для ідентифікації кожного елемента.
-
Збережіть і закрийте форму.
Докладні відомості про форми кількох елементів див. в статті Створення форми за допомогою засобу "Кілька елементів".
Створення форми з одним елементом або "докладними даними":
-
В області переходів виберіть таблицю або запит із потрібними даними у формі з відомостями. Імовірно, це буде та сама таблиця або запит, що й для першої форми.
-
Натисніть кнопку Створити > форму.
-
Внесіть потрібні зміни в макет, а потім збережіть і закрийте форму.
Докладні відомості див. в статті Створення форми за допомогою засобу "Форма".
Додавання логіки, яка відкриває форму з докладними даними
Тепер, щоб додати невеликий макрос до форми з кількома елементами або у вікні табличного подання даних. Макрос відкриє форму з відомостями та переконайтеся, що відображається правильний елемент.
Не хвилюйтеся, якщо ви не виконали багато роботи з макросами; можна просто скопіювати та вставити XML-файл, який ви знайдете в цій процедурі.
-
Якщо використовується форма таблиці даних, двічі клацніть її в області переходів, щоб відкрити її. Для форми з кількома елементами клацніть її правою кнопкою миші в області переходів і виберіть пункт Режим розмітки.
-
Натисніть клавішу F4, щоб відкрити аркуш властивостей, якщо його ще не відкрито.
-
Клацніть стовпець, до якого потрібно додати макрос. Це буде стовпець, який ви клацнете, щоб відкрити форму відомостей після завершення макросу. На зображенні вище макрос додається до стовпця ідентифікатора frmContactList.
Порада.: Макрос можна додати до кількох стовпців.
-
На вкладці Подія аркуша властивостей клацніть у полі властивості Після клацання або Клацання об'єкта (залежно від того, чи потрібно відкрити форму, клацнувши поле одним клацанням або двічі клацнувши його), а потім натисніть кнопку Побудувати
. -
Якщо в Access з'явиться запит на вибір побудовника, виберіть конструктор макросів і натисніть кнопку OK.
-
Виділіть цей блок XML і натисніть клавіші Ctrl+C, щоб скопіювати його до буфера обміну: <?xml version="1.0" encoding="UTF-16" standalone="no"?> <UserInterfaceMacros xmlns="http://schemas.microsoft.com/office/accessservices/2009/11/application"> <UserInterfaceMacro For="ID" Event="OnClick"><Statements><Action Name="OnError"><Argument Name="Goto">Macro Name</Argument><Argument Name="MacroName">ErrorHandler</Argument></Action> <ConditionalBlock><If><Condition>[Form].[Dirty]</Condition><Statements><Action Name="SaveRecord"/></Statements></If></ConditionalBlock> <ConditionalBlock><If><Condition>IsNull([ID])</Condition><Statements><Comment>Open the form to a new record if the current ID is Null</Comment><Action Name="OpenForm"><Argument Name="FormName">frmContactDetails</Argument><Argument Name="DataMode">Add</Argument><Argument Name="WindowMode">Dialog</Argument></Action><Action Name="Requery"/></Statements></If><Else><Statements><Comment>Use a TempVar to pass a filter to the OpenForm action</Comment><Action Name="SetTempVar"><Argument Name="Name">Contact_ID</Argument><Argument Name="Expression">[ID]</Argument></Action><Action Name="OpenForm"><Argument Name="FormName">frmContactDetails</Argument><Argument Name="WhereCondition">[ID]=[TempVars]![Contact_ID]</Argument><Argument Name="DataMode">Edit</Argument><Argument Name="WindowMode">Dialog</Argument></Action><Action Name="RemoveTempVar"><Argument Name="Name">Contact_ID</Argument></Action><Action Name="RefreshRecord"/></Statements></Else></ConditionalBlock> </Statements></UserInterfaceMacro></UserInterfaceMacros>
-
Клацніть пусту область конструктора макросів (під розкривним списком Додати нову дію ), а потім натисніть клавіші Ctrl+V, щоб вставити його в дії макросу. Якщо все піде добре, XML у побудовнику макросів взагалі не відображатиметься. Він розгорнеться до доступних для читання блоків макросів, як показано на наступному кроці.
-
За потреби замініть ім'я форми (frmContactDetails) і ім'я стовпця зв'язування (ІДЕНТИФІКАТОР) на ім'я форми та стовпець, який використовується для зв'язування двох форм. На зображенні нижче показано, де може знадобитися внести зміни відповідно до власних імен ідентифікаторів:
-
На вкладці Конструктор натисніть кнопку Зберегти , а потім – Закрити.
-
Якщо потрібно, щоб стовпці, які можна клацали, відображалися як гіперпосилання, щоб користувачі знали, що зможуть його клацнути, переконайтеся, що стовпець усе ще вибрано, а в аркуші властивостей перейдіть на вкладку Формат і встановіть для властивості Відображати як гіперпосилання значення Завжди.
-
Збережіть і закрийте форму, а потім знову відкрийте її та перевірте макрос, клацнувши або двічі клацнувши змінений стовпець.
Докладні відомості про макроси в локальних базах даних див. в статті Додавання логіки до елемента керування в локальній базі даних.
Інші типи зв'язування форм
Відомості про те, як створити комбінацію форми або підформи та зв'язати їх, див. в статті Створення форми, яка містить підформу (форма "один-до-багатьох").
Відомості про те, як створити форму, зв'язану з джерелом даних, наприклад таблицею або запитом, див. в статті Створення форми за допомогою засобу "Форма".