Установка связи между формами

Примечание: Мы стараемся как можно оперативнее обеспечивать вас актуальными справочными материалами на вашем языке. Эта страница переведена автоматически, поэтому ее текст может содержать неточности и грамматические ошибки. Для нас важно, чтобы эта статья была вам полезна. Просим вас уделить пару секунд и сообщить, помогла ли она вам, с помощью кнопок внизу страницы. Для удобства также приводим ссылку на оригинал (на английском языке).

Если у вас есть длинная форма для нескольких элементов, иногда может потребоваться быстро выполнить детализацию данных, чтобы просмотреть дополнительные сведения об одном из элементов. В Access для этого нужно установить связь между формой для нескольких элементов и формой отдельного элемента. При выборе элемента в форме для нескольких элементов откроется форма отдельного элемента, в которой будут показаны дополнительные сведения.

Щелкните код на форме с несколькими элементами, чтобы открыть форму с одним элементом.

Примечания: 

  • Эта статья не относится к веб-приложения Access — тип базы данных оформление с Access и публикации в Интернете.

  • Если вас интересуют другие типы связывания форм, см. раздел Другие типы связывания форм в конце этой статьи.

Создание форм

В большинстве случаев две формы в детализированной конфигурации основаны на одной таблице или запросе. Если у вас уже есть пара форм, необходимых для использования (одна из которых — таблица или форма для нескольких элементов, а другая — форма отдельного элемента или форма сведений), вы можете пропустить этот раздел. В противном случае используйте следующие процедуры для их создания.

Создание формы таблицы или формы с несколькими элементами

  1. В области навигации выберите таблицу или запрос с данными, которые нужно отобразить в табличной форме.

  2. Выберите пункты Создание > Другие формы, а затем — Несколько элементов или Таблица в зависимости от нужного типа формы.

  3. Внесите необходимые изменения. Мы рекомендуем удалить как можно больше лишних столбцов, оставив достаточно сведений для определения каждого элемента.

  4. Сохраните и закройте форму.

Дополнительные сведения о формах для нескольких элементов см. в статье Создание формы с использованием инструмента "Несколько элементов".

Создание формы отдельного элемента или формы сведений

  1. В области навигации щелкните таблицу или запрос с данными, которые нужно отобразить в форме сведений. Скорее всего, это будет та же таблица или тот же запрос, который вы использовали для первой формы.

  2. Выберите пункты Создание > Форма.

  3. Внесите необходимые изменения, сохраните и закройте форму.

Дополнительные сведения см. в статье Создание формы с помощью инструмента "Форма".

Добавление логики для открытия формы сведений

Теперь рассмотрим, как добавить в форму для нескольких элементов или форму таблицы небольшой макрос, который будет открывать форму сведений и отображать правильный элемент.

Не беспокойтесь, если у вас мало опыта работы с макросами. Вы можете просто скопировать и вставить XML-код из процедуры, указанной в этой статье.

  1. Если вы используете форму таблицы, дважды щелкните ее в области навигации, чтобы открыть ее. В случае формы для нескольких элементов щелкните ее правой кнопкой мыши в области навигации и выберите пункт Режим макета.

  2. Нажмите клавишу F4, чтобы открыть окно свойств, если оно еще не открыто.

  3. Щелкните столбец, в который нужно добавить макрос. Это должен быть столбец, при щелчке которого будет открываться форма сведений после выполнения макроса. На рисунке выше макрос добавлен в столбец frmContactList.

Совет:  (СОВЕТ.) Можно добавить макросы в несколько столбцов.

  1. На вкладке Событие окна свойств щелкните поле свойства Нажатие кнопки или Двойное нажатие кнопки (в зависимости от того, как нужно открывать форму: одним или двойным щелчком поля) и нажмите кнопку Создать Изображение кнопки .

  2. Если Access отображает запрос на выбор построителя, выберите пункт Построитель макросов и нажмите кнопку ОК.

  3. Выделите этот блок 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>

  4. Щелкните пустую область в построителе макросов (под раскрывающимся списком Добавить новую макрокоманду) и нажмите сочетание клавиш CTRL+V, чтобы вставить макрос. В случае успешного выполнения процедуры XML-код не будет отображаться в построителе макросов, а преобразуется в более удобочитаемые блоки макросов, как показано в следующем шаге.

  5. При необходимости замените имя формы (frmContactDetails) и имя связываемого столбца (ID) на имя вашей формы и столбца, используемого для связи двух форм. На рисунке ниже показано, где нужно внести эти изменения в соответствии с именами ваших идентификаторов.

    Места, где при необходимости можно изменить образец макроса в соответствии с идентификаторами используемой базы данных.

  6. На вкладке Конструктор нажмите кнопку Сохранить, а затем — Закрыть.

  7. Если выбираемые столбцы нужно отобразить в виде гиперссылки, чтобы пользователям было понятно, что их можно щелкнуть, выберите нужный столбец и в окне свойств на вкладке Формат задайте для свойства Отображать как гиперссылку значение Всегда.

  8. Сохраните и закройте форму, а затем откройте ее еще раз и проверьте макрос, щелкнув или дважды щелкнув измененный столбец.

Дополнительные сведения о макросах в базах данных на компьютере см. в статье Добавление логики в элементы управления базы данных на компьютере.

Другие типы связывания

Создание Подчиненная форма/и связать их друг с другом, читайте в статье Создание формы, содержащей подчиненную форму (отношением «один ко многим»).

Сведения о создании формы, связанной с источником данных, таким как таблица или запрос, см. в статье Создание формы с помощью инструмента "Форма".

Совершенствование навыков работы с Office
Перейти к обучению
Первоочередный доступ к новым возможностям
Присоединиться к программе предварительной оценки Office

Были ли сведения полезными?

Спасибо за ваш отзыв!

Благодарим за отзыв! Возможно, будет полезно связать вас с одним из наших специалистов службы поддержки Office.

×