Как связать форму с таблицей в access

Обновлено: 28.03.2024

вскакивало окошко поиска (сам нарисовал т.к. не получается зделать программно):

происходил поиск по МАРКЕ только в столбце МАРКА в ТАБЛИЦЕ:

и результат выходил в виде таблице только со строкой найденной по критерию.

ПОМОГИТЕ ПОЖАЛУЙСТА, В ПОНЕДЕЛЬНИК УЖЕ ЗАЩИТА ДИПЛОМНОЙ, БЕЗ ЭТОЙ БАЗЫ ДАННЫХ НЕ ДОПУСТЯТ. Скидываю всю базу данных, желательно если кто знает обьясните пошагово.

Как связать две поля из форм, у полей разные типы
Здравствуйте, не могу понять как осуществить связь полей на форме, так что бы при нажатии на кнопу.

Как создать форму с таблицей, в которой можно выделять ячейки
Access 2010 Требуется создать форму с таблицей (не связанной с БД). В таблице можно вводить данные.

Как связать Userform с таблицей
Здравствуйте! Имеется юзерформ и лист. Как их связать чтобы при добавлении данных в юзерформ они.

Как связать DataGridViewCheckBoxCell с таблицей?
Когда я создавал DataGridViewComboBoxColumn, у него было свойство DataPropertyName по которому я.

Можно так:
1) создать мини-форму, назовем ее "поиск", в котором будет свободное поле (назовем его "МаркаКритерий") и кнопки ок и отмена
2) создать запрос на основе таблицы "Культиваторы", для поля "Марка" в нем пишем условие отбора: = Forms![Поиск]![МаркаКритерий]. Назовем его "ПоискПоМарке"
3) в мини-форме "поиск" на кнопку Ок вешаем макрос с командой ОткрытьЗапрос "ПоискПоМарке"
4) на кнопку "отмена" макрос с командой Выход.

Если у вас длинная форма с несколькими пунктами, иногда нужно быстро "развернуть", чтобы увидеть дополнительные сведения об одном элементе. Это можно сделать в Access, связав форму с одним элементом. При щелчке элемента в форме с несколькими пунктами открывается форма с подробными сведениями.

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

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

Если вы имели в виду что-то другое под "связыванием", см. другие типы ссылок в конце этой статьи.

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

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

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

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

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

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

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

Создание формы для одного элемента или формы detail:

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

Внести нужные изменения в оформление, а затем сохранить и закрыть форму.

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

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

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

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

Если используется форма таблицы, дважды щелкните ее в области навигации, чтобы открыть. Для формы с несколькими пунктами щелкните ее правой кнопкой мыши в области навигации и выберите пункт "Макет".

Если лист свойств еще не открыт, нажмите F4, чтобы открыть его.

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

Совет: Макрос можно добавить в несколько столбцов.

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

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

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

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

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

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

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

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

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

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

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

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

В этой статье

Сведения о подчиненных формах

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

Подчиненные формы особенно удобны для отображения данных из таблиц или запросов с отношением "один-ко-многим". Отношение "один-ко-многим" представляет собой связь между двумя таблицами, при которой значение первичного ключа каждой записи в главной таблице соответствует значению в соответствующем поле или полях нескольких записей в связанной таблице. Например, можно создать форму, в которой отображаются сведения о сотрудниках и которая содержит подчиненную форму с заказами каждого сотрудника. Данные в таблице "Сотрудники" являются в отношении стороной "один". Данные в таблице "Заказы" являются в отношении стороной "многие" — для каждого сотрудника может быть несколько заказов.

Форма, содержащая подчиненную форму

1. В основной форме отображаются данные на стороне отношения "один".

2. В подчиненной форме выводятся данные на стороне отношения "многие".

Основная и подчиненная формы взаимодействуют таким образом, что в подчиненной выводятся только те записи, которые связаны с текущей записью в основной. Например, если в основной форме отображаются данные Ольги Зуевой, то в подчиненной отображаются только ее заказы. Если связь между основной и подчиненной формами была разорвана, то в подчиненной форме будут отображаться заказы всех сотрудников, а не только Ольги.

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

Определение

Элемент управления подчиненной формы

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

Свойство элемента управления подчиненной формы, определяющее, какой объект в нем отображается.

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

Свойство "Подчиненные поля"

Свойство элемента управления подчиненной формы, которое задает поле или поля в подчиненной форме, которые будут связывать ее с основной.

Свойство "Основные поля"

Свойство элемента управления подчиненной формы, которое задает поле или поля в основной форме, которые будут связывать ее с подчиненной.

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

Когда элемент управления подчиненной формы имеет в качестве объекта-источника форму, он содержит поля, помещенные в нее и его можно просмотреть как одиночную форму, ленточную форму или таблицу. Одним из преимуществ создания подчиненной формы на основе формы является возможность добавления вычисляемых полей в подчиненную форму, например: [Количество] * [Цена].

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

Создание или добавление подчиненной формы

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

Рекомендуемая процедура

Нужно создать в приложении Access основную и подчиненную формы и связать их.

Нужно использовать существующую форму в качестве основной, но при этом создать в Access новую подчиненную форму и добавить ее в основную.

Нужно использовать существующую форму в качестве основной и добавить в нее одну или несколько существующих форм в качестве подчиненных.

Создание формы, содержащей подчиненную форму, с помощью мастера форм

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

На вкладке Создание в группе Формы нажмите кнопку Мастер форм.

На первой странице мастера в раскрывающемся списке Таблицы и запросы выберите таблицу или запрос. Например, чтобы создать форму "Сотрудники" для отображения в подчиненной форме списка заказов для каждого сотрудника, выберите пункт Таблица: Сотрудники (сторона "один" отношения "один-ко-многим").

Примечание: Порядок выбора таблиц и запросов не имеет значения.

Дважды щелкните поля таблицы или запроса, которые нужно включить в форму.

На той же странице мастера в раскрывающемся списке Таблицы и запросы выберите другую таблицу или запрос. В данном примере мы выберем таблицу "Заказы" (сторона "многие" связи "один-ко-многим").

Дважды щелкните поля таблицы или запроса, которые нужно включить в форму.

Поле в нижней части изображения формы обозначает подчиненную форму.

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

Установите в нижней части страницы мастера переключатель Подчиненные формы и нажмите кнопку Далее.

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

На следующей странице мастера выберите стиль форматирования для формы и нажмите кнопку Далее. Если на предыдущей странице вы выбрали значение Табличный, выбранное форматирование стиля также применяется к подчиненной форме.

На последней странице мастера введите заголовки форм. Имена автоматически присваиваются формам на основе введенных заголовков, а надписи подчиненных форм — на основе введенных заголовков подчиненных форм.

Укажите режим, в котором вы хотите открывать форму: режим формы (чтобы можно было просмотреть или ввести данные) или Конструктор (чтобы можно было изменить ее структуру). Затем нажмите кнопку Готово.

Access создаст две формы — основную форму, которая содержит подчиненную, и саму подчиненную форму.

Добавление одной или нескольких подчиненных форм в существующую форму с помощью мастера подчиненных форм

Используйте эту процедуру для добавления одной или нескольких подчиненных форм в существующую форму. Для каждой подчиненной формы можно создать новую форму или использовать существующую.

В области навигации щелкните существующую форму правой кнопкой мыши и выберите пункт Конструктор.

На вкладке Конструктор в группе Элементы управления щелкните стрелку вниз, чтобы открыть коллекцию Элементы управления, и убедитесь в том, что установлен флажок Использовать мастера.

На вкладке Конструктор в группе Элементы управления выберите элемент Подчиненная форма/отчет.

В форме щелкните место, куда нужно поместить подчиненную форму.

Следуйте указаниям мастера.

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

Создание подчиненной формы путем перетаскивания одной формы в другую

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

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

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

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

Повторите этот шаг, чтобы добавить другие подчиненные формы в основную.

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

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

В области навигации щелкните основную форму правой кнопкой мыши и выберите пункт Конструктор.

Щелкните элемент управления подчиненной формы один раз, чтобы выделить его.

Если область задач "Окно свойств" не отображается, нажмите клавишу F4.

В окне свойств откройте вкладку Данные.

Будет открыто диалоговое окно Связь с полями подчиненной формы.

В списках "Поля и потомки" выберите поля, с помощью которые вы хотите связать формы, и нажмите кнопку "ОК". Если вы не знаете, какие поля использовать, нажмите кнопку "Предложить", чтобы Access попытается определить связующие поля.

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

Сохраните основную форму и переключитесь в режим формы, а затем проверьте, правильно ли она работает.

Открытие подчиненной формы в новом окне в Конструкторе

Если вы хотите внести изменения в структуру подчиненной формы во время работы над основной формой в Конструкторе, вы можете открыть ее в отдельном окне:

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

На вкладке Конструктор в группе Сервис нажмите кнопку Подчиненная форма в новом окне.

Изменение представления по умолчанию для подчиненной формы

При добавлении подчиненной формы в форму элемент управления подчиненной формы (или отчета) отображает подчиненную форму в соответствии с ее свойством Режим по умолчанию. Ниже перечислены значения, которые можно установить для этого свойства.

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

Чтобы задать значение свойства Режим по умолчанию подчиненной формы, выполните указанные ниже действия.

Закройте все открытые объекты.

В области навигации щелкните подчиненную форму правой кнопкой мыши и выберите пункт Конструктор.

Если окно свойств не отображается, нажмите клавишу F4.

Убедитесь в том, что в раскрывающемся списке в верхней части окна свойств выбран пункт Форма.

На вкладке Формат окна свойств задайте для свойства Режим по умолчанию нужное значение.

Примечание: Если нужный режим отсутствует в списке, убедитесь в том, что для свойства "Режим. " установлено значение Да. Например, если нужно выбрать вариант Режим таблицы, убедитесь, что для свойства Режим таблицы установлено значение Да.

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

Добавление связанных данных в форму без создания подчиненной формы

Не всегда требуется создавать отдельный объект формы для отображения связанных данных. Например, если вы работаете с формой в конструкторе или макете и перетаскивайте в нее таблицу или запрос из области навигации, в Access создается набор подчиненной формы или подчиненного с данными в этом объекте. Отображение данных определяется свойством "Режим по умолчанию" объекта. Обычно для этого используется режим таблицы, но для свойства "Режим по умолчанию" таблицы или запроса можно установить значение "Одна форма", "Разделенная форма" или "Лентообразная форма", что обеспечивает большую гибкость при отображке связанных данных в формах.

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

есть табличка екселя, есть готовая БД access, как их совокупить так сказать?! таких табличек екселя более 30
извиняюсь, что такие вопросы задаю, просто новичек в этом не легком деле.

Как связать отчет с формой
Помогите,пожалуйста,связать форму и отчет Выдача книги, по заданным параметрам (для вывода отчетов).


Не знаю, как связать список с формой
Добрый день. Пытаюсь немного оптимизировать документооборот, с этой целью изучаю access. Как.

Как связать форму Календарь с другой формой?
Прошу помощи у Знатоков! Есть форма календарь,которая работает по модулю,т.е. есть модуль.

Как связать результат из выпадающего списка с нужной формой?
В Access я новичок. Я создала форму, на которой пользователь выбирает журнал из выпадающего списка.

кстати еще, в таблички екселя будут добавляться еще поля, телефон, паспорт, год прописки и тому подобное

ну да, таблички екселя импортировать в акесс и там уже связать с той формой которая уже сформирована ( в примере посмотрите)

Добавлено через 21 минуту
Вячеслав Я, поможете сданным вопросом?

DanilaMen, я бы с удовольствием, но плохо владею подключением других приложений MC Office к Access. Если делать сразу в Access, то тут много проще.

так я ж и имею ввиду , вот ту табличку импортировать в аксес и там уже подвязать к форме, это у меня и не получается

Добавлено через 1 минуту
ну вот таблички екселя - импортировать, а внутри акесса уже подвязать под ФОРМУ (которая уже существует)

только что бы форма осталась такой какая есть и данные из таблиц екселя тоже

Здравствуйте, подскажите, пожалуйста, как создать связанную форму. Не совсем понимаю по какому принципу “связываются”. Как я поняла должна быть связь между таблицами “один ко многим” и общее поле в двух таблицах. Чтобы создать связанную форму нужно иметь две подчиненные?


Связанные формы в Access
Есть две таблицы Список пациентов и Журнал В списке пациентов очевидно забиты сами пациенты, их.

Связанные таблицы в Access
Помогите,пож-ста, как в Access можно посмотреть, с каким внешним файлом связана связанная в Access.


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


связанные формы
Доброго дня! На главной форме ввода объектов у меня висит список объектов с функцией поиска, то.

Что то без примера не совсем понятно, о чем вы спрашиваете ибо ваш вопрос можно истолковать двояко, а то и трояко.
Предположим, что спрашиваете о самом элементарном, с чего начинают начинающие.
Допустим ставим себе задачу - Создать БД с контактными телефонами клиентов.
Создаем таблицу - Клиенты.
а так как у одного Клиента может быть несколько телефонов, то:
Создаем подчиненную таблицу - ТелефоныКлиентов.
У табл. - Клиенты создаем ключевое поле с типом данных - Счетчик
У табл. - ТелефоныКлиентов создаем поле для связи с табл. Клиенты, тип данных - Числовое.
Открываем схему данных.
Указываем какие таблицы отобразить.
Курсором мыша указываем на поле - Код_Клиента и не отпуская левой кнопки мышки, тянем к полю - КодКлиентаТК в табл. ТелефоныКлиента.
Появится Линия связи.
Щелкаем поэтой связи.
Откроется окошко, где ставим галочку у - Обеспечение целостности данных.
Ок.
С помощью Мастера форм создаем форму - Клиенты.
Размещаем поля в радующем глаз порядке.
С помощью мастера форм на панели элементов и значка - Подчиненные формы, делаем подчиненную форму на основе табл. Телефоны клиентов.
Т.к. мы уже указали какие поля являются Основное и Подчиненное, то в подчиненной форме Акс сам уже их проставит.
В кратце как то так.

Читайте также: