Формы с подчиненной формой
Формы с подчиненными формами используются для редактирования данных либо из двух связанных таблиц, либо из таблицы и запроса, связанных по типу связи один-ко-многим. В главной форме в подобном случае будут отражаться данные из одной записи, а в подчиненной из нескольких записей, которые, в свою очередь, будут связаны с записью главной формы. Подчиненные формы имеют, как правило, ленточный тип или табличный. Такие формы часто используются для создания вычисляемых полей, предназначенных для вычисления итоговых величин по данным записей подчиненной формы.
Пример создания формы
Рассмотрим в качестве примера создание формы, выводящей для каждого читателя библиотеки списка книг, которые находятся у него на руках, с указанием авторов книг, названий, дат выдачи и возврата, а также с использованием поля Пеня, созданным и вычисляемом в запросе, который назовем Список1. Допустим пеню начисляют в размере 1% от стоимости книги за каждый просроченный день. Выполним расчет общей суммы пени для каждого читателя. Форма будет иметь подчиненную форму, содержащую список книг читателя. Данные в подчиненную форму будут поступать из запроса Список1, который был создан ранее.
Создание макета формы с помощью Мастера форм
Начальный макет формы создадим с помощью Мастера форм, а потом улучшим его с помощью Конструктора.
Создадим форму, выполняя следующие операции с помощью Мастера форм:
- В окне базы данных необходимо выбрать вкладку Формы и щелкнуть кнопку Создать.
- В окне Новая форма выберем в качестве источника данных в раскрывшемся списке таблиц таблицу Читатели. Затем в другом поле выберем Мастер форм и щелкнем на кнопке ОК.
- В появившемся окне Создание форм из списка Доступные поля перенесем в список Выбранные поля следующие поля: NB, Фамилия, Кафедра и Телефон. Далее в раскрывшемся выше списке (список таблиц и запросов) выберем запрос Список1, поля которого появятся в списке Доступные поля, и перенесем в список Выбранные поля все поля запроса.
- В следующем окне выбираем тип изображения данных. Необходимо выбрать по Читатели, поскольку главной формой станет форма, отображающая сведения о читателях. Отметим переключатель Подчиненные формы для того, чтобы остальные данные вставить в подчиненную форму, и затем щелкнем на кнопку Далее.
- В следующем окне нужно выбрать вид подчиненной формы. Поскольку удобно видеть все данные о читаемых книгах, представленными в виде таблицы, отметим переключатель ленточный и щелкнем на кнопку Далее.
- Затем необходимо выбрать стиль главной формы. Стиль отобразится в окне выбора сразу после того, как отметим его в списке. Щелкнем на кнопку Далее.
- В следующем окне зададим имена главной и подчиненной форм. Access создал 2 формы, которые связаны друг с другом. Но их можно корректировать, используя режим конструктора, независимо одну от другой, а также использовать подчиненную форму независимо от главной. Назовем главную форму Читатели, а подчиненную – Список1. Щелкнем на кнопку Готово, и на экране отобразится созданная форма.
Редактирование формы с помощью Конструктора форм
Следующим шагом станет улучшение созданной формы с помощью Конструктора форм. Затем необходимо добавить в форму Список1 поле, в котором будет вычисляться общая сумма пени для каждого читателя. Пример формы такого типа в режиме конструктора приведен на рисунке 1. В Конструкторе форм добавлено вычисляемое поле Всего пени, расположенное в области Примечание формы.
Далее необходимо выполнить следующие действия:
Открыть подчиненную форму Список1 в режиме конструктора. В области Примечание формы создадим новое вычисляемое поле и назовем его Всего пени. В окне Свойства для графы Данные зададим формулу для вычисления суммы пени (=Sum([Пеня])). Изменим текст перед этим полем. Новая форма готова. Сохраним внесенные изменения и откроем форму для просмотра. В форме отобразятся записи обо всех выданных книгах, а также в нижнем поле общая сумма пени по всем читателям. Отметим, что размеры полей, в которых выводится информация о книгах, изменены таким образом, чтобы авторы и название книги выводились в несколько строк для более полного отображения содержания поля.
Далее займемся улучшением внешнего вида формы Читатели. Для этого необходимо открыть форму Читатели в режиме конструктора и выполнить следующие действия:
- растянуть с помощью мыши область Заголовок формы, добавить элемент управления Надпись и ввести текст «Информация о читателях и выданных книгах» (рис. 3). Затем изменить начертание и размер шрифта для улучшения внешнего вида;
- переместить поля Кафедра и Телефон вправо для освобождения места для подчиненной формы.
- растянуть подчиненную форму на все свободное пространство.
Откроем форму в режиме просмотра.
Внизу каждой формы находится элемент управления Кнопки перехода, который позволяет перемещаться по записям, создавая новые пустые записи и заполняя их. Данный элемент управления появляется в форме в случае, когда свойство формы Кнопки перехода имеет значение Да. В случае же изменения значения этого свойства на Нет данный элемент отображаться в форме не будет. В подчиненной форме данный элемент использовать не обязательно. Поэтому, снова откроем форму Список1 в режиме конструктора, откроем окно Свойства для формы, найдем свойство Кнопки перехода и изменим его значение на Нет.
Как создать подчиненную форму в access
Подчиненные формы
Главным преимуществом в работе с базами данных можно назвать удобство представления и эффективность организации данных. Access позволяет сконструировать форму наиболее удобным для пользователя способом, включив в нее записи различных связанных таблиц. Для отображения информации сразу из двух таблиц или из таблицы и запроса создается составная форма, которая состоит из основной и находящейся внутри нее подчиняющейся формы. Это позволяет объединять информацию, не переключаясь на другие таблицы или формы. Как правило, подчиненная форма связана с основной . Сохраняется подчиненная форма в базе данных как отдельная форма.
Основным способом создания формы является использование Мастера составной формы. Мастер может создать и связать обе формы в случае, если основная форма базируется на таблице, а подчиненная форма базируется на связанной с ней другой таблице или создана на базе таблицы и запроса, содержащего поле с тем же именем и типом данных, что и ключевое поле таблицы основной формы.
В качестве примера рассмотрим задачу построения формы Успеваемость студентов, в которой отражены сведения: Фамилия, имя (таблица Сведения о студентах), предмет и оценка (таблица Годовая успеваемость группы).
Рис. 25. Внешний вид готовой формы
Верхняя (заголовочная) часть формы соответствует текущей строке таблицы Сведения о студентах и меняется при переходе от записи к записи, который может производиться с помощью стрелок, расположенных в нижней части окна. Одновременно должны меняться строки таблицы Годовая успеваемость группы, в которой выводится только информация, относящаяся к текущему студенту.
Рассмотрим более подробно те средства Access, с помощью которых может быть получен такой результат. Это так называемая сложная/или составная форма. Процесс ее создания состоит из двух принципиальных этапов:- создание основной (главной) формы. Для этого осуществляются действия, аналогичные тем, которые выполнялись при создании формы Сведения о студентах;- создание подчиненных форм. Для этого в созданную главную форму добавляется элемент управления Подчиненная форма.
При создании подчиненной формы в Access существует две принципиальные возможности:- создать новую форму на базе некоторой таблицы или запроса;- воспользоваться уже существующей формой, сделав ее подчиненной.
1. Открыть ранее созданную базу данных Группа.mdb.
2. Активизировать вкладку Форма диалогового окна База данных .
3. Начать создание составной формы с использованием мастера нажатием
кнопки С оздать .
4. В диалоговом окне Новая форма выбрать таблицу Сведения о студентах для основной формы и тип создания – Мастер форм , нажать кнопку ОК . Далее выполнить последовательно:
· в окне первого шага мастера Создания формы из таблицы
Сведения о студентах выбрать поля Фамилия и Имя в качестве полей основной формы, нажимая после выбора каждого указанного поля кнопку >. Далее выбрать таблицу Годовая успеваемость группы , содержащую данные для подчиненной формы, выбрать поля Предмет и Оценка в качестве полей подчиненной формы, нажимая кнопку >.
По окончании выбора нажать кнопку Д алее > ;
· в окне второго шага мастера Создания форм выбрать вид
представления данных – подчиненная форма;
· в окне третьего шага выбрать внешний вид формы, например,
выровненный . По окончании выбора нажать кнопку Далее > ;
· в окне четвертого шага мастера Создания форм выбрать требуемый стиль формы. По окончании выбора нажать кнопку Далее > ;
· в окне пятого шага мастера Создания форм задать имя формы Успеваемость студентов и нажать кнопку Готово > . На экране появится новая составная форма, которая содержит данные обеих таблиц.
5. Сохранить подчиненную форму, ввести в окно Сохранение имя формы
Лекция по теме: Создание ФОРМ в MICROSOFT ACCESS
Материал предназначен для студентов 2го года обучения.
Просмотр содержимого документа
«Лекция по теме: Создание ФОРМ в MICROSOFT ACCESS»
СОЗДАНИЕ ФОРМ В MICROSOFT ACCESS
Формой в Microsoft Access называют объект базы данных, который позволяет добавлять, редактировать или отображать данные, хранящиеся в базе данных.
Формы в Microsoft Access создают для того, чтобы облегчить ввод и редактирование данных, обеспечить их вывод в удобном для пользователя представлении. С помощью подобных объектов можно делать доступной только часть данных, автоматически выбирать информацию из связанных таблиц, вычислять значения выражений и т. д.
Существует много вариантов, которые можно реализовать с помощью создания форм MS Access. Можно создать два основных типа форм:
Связанные формы (Bound Forms) взаимодействуют с некоторыми базами данных, такими как оператор SQL, запрос или таблица. Этот вид используется для ввода или редактирования данных в базе.
Несвязанные формы (Unbound Forms) не зависят от источника данных. Они могут быть в форме диалоговых окон и коммутационных площадок, используемых для навигации с базой данных в целом. Существует много режимов создания форм в Access.
Типы связанных форм:
Форма единого элемента, самая популярная, когда записи отображаются в одной записи единовременно.
Несколько элементов, отображает ряд записей за один раз из связанного источника данных.
Сплит-форма, разделяется на половину, горизонтально или вертикально. Одна отображает элемент или запись, а другая — предоставляет данные нескольких записей из базового источника данных.
Подчиненные формы
Подчиненная форма — это элемент, являющийся дополнением другой, основной Access-формы. Создание форм подчинения – это разработка иерархической конструкции из двух таблиц, отражающей наличие отношений между формами.
Отношения между ними могут отражать разный тип связи, имеющийся между таблицами базы данных: «один-ко-многим», «многие-ко-многим» (приложение 2). Часто эти отношения рассматривают в разрезе родственной связи с наличием родительской (основной) формы и дочерней (подчиненной).
Создание подчиненных форм в Access можно объяснить примером: такой формой может стать форма заказов покупателя в интернет-магазине.
Сведения о покупателе содержатся в одной таблице, а сведения о его заказах хранятся в другой в связи с проведением нормализации при проектировании базы данных.
Одному покупателю соответствует сразу несколько заказов, поэтому отношение между таблицами покупателя и заказов отражают связь «один-ко-многим». В этом случае форма, представляющая данные покупателя, станет основной.
Другая, представляющая данные его заказов, будет добавлена к основной и окажется подчиненной.
Расположенные в одном пространстве макета основная и подчиненная формы демонстрируют только связанные данные. Так, если в таблице покупателей находится уникальный покупатель, а в подчиненной таблице заказов с ним связано три записи, значит, подчиненная форма отобразит все три записи о его заказах.
Разобравшись с тем, как делаются формы, какова их роль и, что они дают, вы будете чувствовать себя значительно увереннее, работая в программе Microsoft Access.
Создать её можно двумя способами:
При помощи Мастера форм.
При помощи Конструктора форм.
Рассмотрим подробнее каждый из способов.
При помощи Мастера форм.
Перейдите на вкладку «Создание», затем отыщите и нажмите кнопку «Мастер форм».
Перед вами откроется окно мастера, в котором необходимо указать таблицы, содержащие нужные поля, из выпадающего списка.
После этого отметьте все поля, которые хотите добавить.
Примечание: Также обратите внимание, что в качестве основы можно использовать не только таблицы, но и запросы. Однако, в этом случае больше рекомендуется использовать именно таблицы.
Далее, выберите внешний вид, отметив один из следующих вариантов:
Рекомендуется остановиться на первом пункте – в один столбец.
В следующем окне укажите название будущей формы и нажмите кнопку «Готово».
Перед вами появится обычная форма. В нижней части окна вы обнаружите специальные кнопки для навигации.
Для большего удобства рекомендуется установить свои кнопки, чтобы было проще переключаться между записями. (Приложение 1)
Делается это следующим образом. Кликните правой клавишей мыши и выберите в меню пункт «конструктор». Затем перейдите к ленте инструментов и в разделе «Элементы управления» выберите «Кнопка». Разместите её в нужном месте формы и в открывшемся окне укажите «Переходы по записям» в разделе «Категории» и «Предыдущая запись» в разделе «Действия». В следующем окне вы можете выбрать, что разместить на кнопке: текст либо рисунок. Выберите то, что вам больше нравится, принципиальной разницы тут нет. Нажмите «Готово».
Аналогичным образом создайте ещё одну, только уже для перехода к следующей записи.
Также стоит добавить кнопку для выхода из формы. В разделе «Категории» выберите «Работа с формой», а в разделе «Действия» — строку «Закрыть форму». Ещё пригодится специальная кнопка для добавления данных. Укажите «Обработка записей» в пункте «Категории» и «Добавить запись» в пункте «Действия».
После этого вам будет очень удобно переходить от одной записи к другой и добавлять новые, находясь в режиме формы. Всё это позволит значительно повысить скорость работы.
Теперь рассмотрим второй способ создания — при помощи конструктора форм.
После нажатия на соответствующий инструмент перед вами откроется размеченная пустая область, не имеющая ни полей, ни заголовков. В этом случае заполнять пустую область придётся полностью самостоятельно.
Воспользуйтесь инструментом «Добавить поле», который находится в блоке «Сервис» на панели инструментов (Приложение 1).
В появившемся окне выберите нужные таблицы и поля из них. Просто перетаскивайте в незаполненную область. Чтобы не мучиться с размещение каждого отдельного поля, выделите их все и щёлкните правой клавишей мыши.
В открывшемся меню нажмите «Макет» и выберите один из вариантов размещения: «В столбик» либо «В виде таблицы».
Для добавления заголовков воспользуйтесь инструментом «Надпись». В свойствах вы можете изменять шрифт, его размер, цвет и прочие параметры. Для каждого поля можно настроить свой цвет, выбрать цвет заливки и так далее. В общем, Microsoft Access позволяет вам настраивать все элементы по своему усмотрению.
Добавление дополнительных полей в форму
Когда вы используете команду Form в существующей таблице, все поля из этой таблицы включены в эту форму. Однако, если позже вы добавите дополнительные поля в эту таблицу, эти поля автоматически не появятся в существующих формах. В подобных ситуациях вы можете добавить дополнительные поля в форму.
Чтобы добавить поле в форму:
Перейдите на вкладку «Конструктор компоновки форм», затем найдите группу «Инструменты» в правой части ленты.
Нажмите команду «Добавить существующие поля».
Появится панель списка полей. Выберите поле или поля для добавления в форму.
Если вы хотите добавить поле из той же таблицы, которую вы использовали для создания формы, дважды щелкните имя нужного поля.
Чтобы добавить поле из другой таблицы:
Нажмите «Показать все таблицы».
Щелкните знак плюса + рядом с таблицей, содержащей поле, которое вы хотите добавить.
Дважды щелкните нужное поле.
Будет добавлено новое поле.
Вы также можете использовать описанную выше процедуру, чтобы добавить поля в совершенно пустую форму.
Просто создайте форму, нажав команду «Пустая форма» на вкладке «Создать», а затем выполните указанные выше шаги, чтобы добавить нужные поля.
Чтобы создать поле со списком:
В представлении «Макет формы» выберите вкладку «Дизайн макета форм» и найдите группу «Элементы управления».
Выберите команду Combo Box, которая выглядит как раскрывающийся список.
Ваш курсор превратится в крошечный значок перекрестия и выпадающего списка. Переместите курсор в место, где вы хотите вставить поле со списком, затем нажмите.
Появится желтая строка, указывающая место, где будет создано ваше поле со списком.
В нашем примере, поле со списком будет расположен между в город поле и добавить в список рассылки.
Появится диалоговое окно Combo Box Wizard. Выберите второй вариант, я наберу нужные значения и нажмите «Далее».
Введите варианты, которые вы хотите отобразить в раскрывающемся списке. Каждый выбор должен быть в отдельности.
В нашем примере мы создаем поле со списком для добавления в список рассылки? поле в нашей форме, поэтому мы введем все возможные допустимые ответы для этого поля. Пользователи смогут выбрать один из трех вариантов из готового комбинированного поля: Нет, Да-Еженедельно и Только специальные предложения.
При необходимости, измените размер столбца, чтобы весь текст был виден. После того, как вы удовлетворены своим списком, нажмите «Далее».
Выберите магазин, что значение в этом поле, а затем нажмите на стрелку раскрывающегося списка и выберите в поле, где вы хотите выбор из комбо — поля для записи. После выбора нажмите «Далее».
Введите метку или имя, которое будет отображаться рядом с вашим полем со списком. Как правило, рекомендуется использовать имя поля, которое вы выбрали на предыдущем шаге.
Нажмите «Готово» Ваше поле со списком появится в форме. Если вы создали свое поле со списком для замены существующего поля, удалите первое поле.
В нашем примере вы можете заметить, что теперь у нас есть два поля с тем же именем. Эти два поля отправляют информацию в одно и то же место, поэтому мы не нуждаемся в них обоих. Мы удалим его без поля со списком.
Перейдите в режим просмотра формы, чтобы протестировать поле со списком. Просто нажмите стрелку раскрывающегося списка и убедитесь, что список содержит правильные варианты.
Теперь поле со списком можно использовать для ввода данных.
Если вы хотите включить раскрывающийся список с длинным списком параметров и не хотите вводить их все, создайте поле со списком и выберите первый вариант в мастере со списком, я хочу получить значения из другой таблицы или запроса. Это позволит вам создать раскрывающийся список из поля таблицы.
Некоторые пользователи сообщают, что Access работает при работе с формами. Если у вас возникла проблема с выполнением любой из этих задач в представлении «Макет», попробуйте переключиться на «Дизайн».
Панель элементов
Работа по созданию несвязанных и вычисляемых элементов в режиме конструктора форм происходит, в основном, при помощи панели элементов. Ее можно вызвать командой меню Вид / Панель элементов (кнопка на панели инструментов Конструктор форм).
Выбрав нужный элемент на панели, следует поместить указатель мыши в нужной области формы (он превратится в значок выбранного элемента) и щелкнуть левой кнопкой.
Перечислим кнопки панели элементов (слева направо и сверху вниз):
Выбор объектов — используется для выделения, изменения размеров, перемещения и редактирования элемента управления, по умолчанию нажата;
Мастера — помогает вветси свойства соответсвующих элементов, по умолчанию включена;
Надпись — используется для создания области текста;
Поле — используется для создания одноименного элемента управления, служащего для вывода теста, чисел, дат, вычисляемых выражений; этот элемент можно связать с одним из полей таблицы или запроса;
Группа переключателей — используется для создания элементов управления (группы переключателей, флажков или выключателей);
Выключатель, Переключатель, Флажок — элементы управления, принимающие значение Да/Нет, которые можно связать с полем базовой таблицы (запроса) и/или использовать для организации диалога с пользователем;
Поле со списком, Список — используются для создания элементов управления, содержащих список потенциальных значений, которые можно внести в строку свойства Источник строк или использовать подстановку из имеющейся таблицы или запроса;
Кнопка — элемент управления, с помощью которого можно активизировать функцию или макрос;
, — средства для вставки в форму рисунка, рамок (связанных и свободных), рисования линий и прямоугольников;
Разрыв страницы, Вкладка — элементы, позволяющие разделить информацию из источника записей на отдельные страницы (вкладки);
Подчиненная форма/отчет — для включения в данную форму информации из дополнительного источника. Как правило, в качестве подчиненной формы используется объект (форма, запрос, таблица), связанный с исходным. Поэтому в подчиненном объекте зачастую отражаются не все записи, а только соответствующие определенному значению некоторого поля главной формы.
Выделение разделов и элементов формы
Выделение нужного объекта в режиме конструктора формы удобнее всего осуществлять с помощью поля Объект панели инструментов Формат (форма/отчет)
Для выделения всей формы можно использовать маркер в левом верхнем углу Конструктора (на пересечении горизонтальной и вертикальной линеек). Щелчком левой кнопкой мыши по соответствующим разделителям разделов формы или по элементам управления также можно осуществлять их выделение. Для выделения смежных объектов можно перемещать мышь при нажатой левой кнопке по вертикальной (горизонтальной) линейке. Для несмежного выделения используют щелчки левой кнопкой при нажатой клавише Shift.
Элемент управления при выделении заключается в тонкую прямоугольную рамку с небольшими квадратными маркерами на углах и серединах сторон. Для изменения размеров элемента управления следует поместить указатель мыши на один из этих маркеров. Указатель превратится в двунаправленную стрелку. Перемещая мышь при нажатой левой кнопке, можно придать элементу нужные размеры. Дважды щелкнув по любому из маркеров изменения размера элемента, можно настроить его размер по размеру данных, которые будут в нем отображаться (автоподбор размера).
Для перемещения элемента управления указатель мыши надо поместить на любой стороне элемента между маркерами. Указатель превратится при этом в изображение руки и элемент можно перемещать на нужное место.
Если элемент управления имеет связанную подпись, перемещение подписи (или самого элемента) вызывает одновременное перемещение элемента (подписи). Для перемещения элемента управления независимо от подписи следует использовать более крупный квадратный маркер в левом верхнем углу рамки. При позиционировании на нем указатель мыши превращается в изображение руки с вытянутым указательным пальцем.
Оформление формы и ее элементов
Команду Вид / Свойства (кнопка панели инструментов) можно использовать для изменения и уточнения различи свойств формы, ее активных разделов или выделенных элемен Определяя свойства формы, можно скрыть полосы поо крутки, кнопки перехода, область выделения записей и др.
Можно, например, отменить вывод поля на экран, заблокировать доступ к данным в поле, изменить его тип и т. д.
Пользуясь меню или панелью форматирования, можно изменять параметры шрифта, настраивать свойства цвета фона (фоновый рисунок), тип, цвет, ширину границы, тип оформления, указывать точный размер отдельных элементов управления формы.
Команда Формат / Автоформат. (кнопка на панели инструментов) позволяет воспользоваться встроенными средствами для задания фонового рисунка и шрифтов в элементах управления, отдельных разделах и форме в целом.
С помощью соответствующих команд меню Формат можно выровнять элементы, привязать их к сетке, установить интервал между ними по горизонтали и вертикали.
Возникают ситуации, когда необходимо добавить вычисляемое поле. Как это делается? Очень просто.
Сперва, перейдите в режим конструктора.
Далее в ленте инструментов укажите «Поле» в блоке «Элементы управления».
Затем нажмите «Страница свойств» и перейдите на вкладку «Данные». В одноимённом пункте нажмите на «…» в конце строки.
В появившемся окне вы сможете составить выражения на основе полей таблицы. Если формат числа, отображаемого в вычисляемом поле, не соответствует нужному (например, должна отображаться денежная сумма), то формат можно изменить.
Для этого перейдите на страницу свойств, откройте вкладку «Макет» и в строке «Формат поля» выберите нужный из выплывающего списка вариантов.
Если необходимо создать подчинённую форму, отметьте соответствующий пункт в одном из окон мастера. Обратите внимание, что создание такого типа формы рекомендуется только для таблиц, имеющих связь «один ко многим».
Чтобы задать автоматическое заполнение поля текущей датой:
В представлении «Макет» или «Дизайн» выберите вкладку «Дизайн» и найдите группу «Инструменты». Щелкните команду Property Sheet.
Лист свойств появится на панели справа. В форме выберите поле, которое вы хотите автоматически заполнить в текущую дату. Это должно быть поле с типом данных даты. В нашем примере мы выберем поле «Дата отправки» в нашей форме «Заказы».
В Листе свойств перейдите на вкладку «Данные» и выберите поле «Значение по умолчанию» в четвертой строке. Нажмите кнопку «Создатель выражений», которая отображается в столбце справа .
Откроется диалоговое окно «Конструктор выражений». В списке Элементы выражения выберите слова «Общие выражения».
В списке категорий выражений дважды щелкните текущую дату.
Будет добавлено выражение для текущей даты. Нажмите «ОК».
Перейдите в режим просмотра формы, чтобы убедиться, что это выражение работает. При создании в новую запись с этой формой, поле даты «вы изменяли» будет автоматически заполнять текущую дату.
Как сделать подчиненную форму в access 2010?
В процессе создания приложения СУБД Access или базы данных решаются две основные проблемы: первая – создание структуры БД (таблиц и связей между ними), вторая – организация интерфейса пользователя для работы с БД. Основным средством организации интерфейса пользователя в приложениях СУБД Access являются формы, которые могут быть использованы для ввода, редактирования, вывода данных и других целей.
Если в одной форме требуется просматривать данные из нескольких таблиц или запросов, то для этой цели необходимо применить подчиненные формы. Подчиненная форма – это форма, вставленная в другую форму. Например, подчиненную форму можно использовать при просмотре информации о студентах факультета в группах на примере базы данных Training_students_VP.
Подчиненные формы целесообразно создавать для отображения данных из таблиц, имеющих отношение «один-ко-многим». На примере базы данных Training_students_VP рассмотрим технологию создания подчиненной формы, которая имеет две таблицы «Группы студентов» и «Студенты» связанные отношением «один-ко-многим» (Рис.1)

Рис. 1.
Если в окне базы данных Training_students_VP открыть таблицу «Группы студентов», то можно увидеть, что рядом с каждой записью таблицы помещен знак «+» (Рис. 2).

Рис. 2.
то означает, что у этой таблицы появилась подтаблица.
Если щелкнуть на знаке «+», например, перед второй записью, то отобразится таблица «Студенты» и мы увидим, что в группе БФ-16б числится два студента (Ильин и Иванов).
Теперь создадим подчиненную форму, содержащую эти две таблицы. Существует несколько способов создания подчиненных форм. Наиболее простой способ создания подчиненных форм – это создание Автоформы.
Для создания Автоформы необходимо на вкладке Таблицы в окне базы данных выделить таблицу «Группы студентов» и на панели инструментов щелкнуть кнопку «Новый объект: форма».
В открывшемся меню надо выбрать команду Автоформа, в результате получим Главную форму «Группы студентов», в которую вставлена подчиненная таблица «Студенты». Затем сохраним форму как «Группы студентов_ПФ» и закроем ее.
Скриншот Главной и подчиненной формы представлен на Рис. 3.

Рис. 3.
Преобразуем полученную форму. Для этого в режиме конструктора в Главной форме удалим поле КодГруппы, слово «Название» заменим на «Группа» и изменим некоторые размеры формы. После проведенных изменений, автоформа (под имененм Podch_gr_st_a) будет иметь вид, представленный на Рис. 4.

Рис. 4.
Создать подчиненную форму можно и с помощью Конструктора.
Для этого в окне базы данных надо перейти на вкладку формы и щелкнуть на кнопке создать, а в качестве источника данных выбрать таблицу «Студенты» и щелкнуть ОК.
В полученную пустую стандартную форму требуется перетащить поля: Фамилия, Имя, Отчество, пол, дата рождения и другие необходимые поля, а затем сохранить и закрыть данную форму.
Аналогично надо создать вторую (главную) форму «Группы студентов». В качестве источника данных выбрать «Группы студентов» и щелкнуть ОК. В полученную форму требуется перетащить поля: Название, Курс и Семестр. Кроме того, в полученной форме предусмотреть место для таблицы «Студенты», а затем сохранить данную форму.
Затем на форму «Группы студентов» открытую в режиме конструктора можно перетащить подчиненную форму «Студенты» из окна базы данных. В результате получим Главную форму «Группы студентов», в которую вставлена подчиненная таблица «Студенты».
Формы с подчиненной формой
Формы с подчиненными формами используются для редактирования данных либо из двух связанных таблиц, либо из таблицы и запроса, связанных по типу связи один-ко-многим.
В главной форме в подобном случае будут отражаться данные из одной записи, а в подчиненной из нескольких записей, которые, в свою очередь, будут связаны с записью главной формы. Подчиненные формы имеют, как правило, ленточный тип или табличный.
Такие формы часто используются для создания вычисляемых полей, предназначенных для вычисления итоговых величин по данным записей подчиненной формы.
Рассмотрим в качестве примера создание формы, выводящей для каждого читателя библиотеки списка книг, которые находятся у него на руках, с указанием авторов книг, названий, дат выдачи и возврата, а также с использованием поля Пеня, созданным и вычисляемом в запросе, который назовем Список1.
Допустим пеню начисляют в размере 1% от стоимости книги за каждый просроченный день. Выполним расчет общей суммы пени для каждого читателя. Форма будет иметь подчиненную форму, содержащую список книг читателя.
Данные в подчиненную форму будут поступать из запроса Список1, который был создан ранее.

Попробуй обратиться за помощью к преподавателям
Создание макета формы с помощью Мастера форм
Начальный макет формы создадим с помощью Мастера форм, а потом улучшим его с помощью Конструктора.
Создадим форму, выполняя следующие операции с помощью Мастера форм:
- В окне базы данных необходимо выбрать вкладку Формы и щелкнуть кнопку Создать.
- В окне Новая форма выберем в качестве источника данных в раскрывшемся списке таблиц таблицу Читатели. Затем в другом поле выберем Мастер форм и щелкнем на кнопке ОК.
- В появившемся окне Создание форм из списка Доступные поля перенесем в список Выбранные поля следующие поля: NB, Фамилия, Кафедра и Телефон. Далее в раскрывшемся выше списке (список таблиц и запросов) выберем запрос Список1, поля которого появятся в списке Доступные поля, и перенесем в список Выбранные поля все поля запроса.
- В следующем окне выбираем тип изображения данных. Необходимо выбрать по Читатели, поскольку главной формой станет форма, отображающая сведения о читателях. Отметим переключатель Подчиненные формы для того, чтобы остальные данные вставить в подчиненную форму, и затем щелкнем на кнопку Далее.
- В следующем окне нужно выбрать вид подчиненной формы. Поскольку удобно видеть все данные о читаемых книгах, представленными в виде таблицы, отметим переключатель ленточный и щелкнем на кнопку Далее.
- Затем необходимо выбрать стиль главной формы. Стиль отобразится в окне выбора сразу после того, как отметим его в списке. Щелкнем на кнопку Далее.
- В следующем окне зададим имена главной и подчиненной форм. Access создал 2 формы, которые связаны друг с другом. Но их можно корректировать, используя режим конструктора, независимо одну от другой, а также использовать подчиненную форму независимо от главной. Назовем главную форму Читатели, а подчиненную – Список1. Щелкнем на кнопку Готово, и на экране отобразится созданная форма.
Редактирование формы с помощью Конструктора форм
Следующим шагом станет улучшение созданной формы с помощью Конструктора форм.
Затем необходимо добавить в форму Список1 поле, в котором будет вычисляться общая сумма пени для каждого читателя. Пример формы такого типа в режиме конструктора приведен на рисунке 1. В Конструкторе форм добавлено вычисляемое поле Всего пени, расположенное в области Примечание формы.
Далее необходимо выполнить следующие действия:
Открыть подчиненную форму Список1 в режиме конструктора. В области Примечание формы создадим новое вычисляемое поле и назовем его Всего пени. В окне Свойства для графы Данные зададим формулу для вычисления суммы пени (=Sum([Пеня])). Изменим текст перед этим полем. Новая форма готова.
Сохраним внесенные изменения и откроем форму для просмотра. В форме отобразятся записи обо всех выданных книгах, а также в нижнем поле общая сумма пени по всем читателям.
Отметим, что размеры полей, в которых выводится информация о книгах, изменены таким образом, чтобы авторы и название книги выводились в несколько строк для более полного отображения содержания поля.
Далее займемся улучшением внешнего вида формы Читатели. Для этого необходимо открыть форму Читатели в режиме конструктора и выполнить следующие действия:
- растянуть с помощью мыши область Заголовок формы, добавить элемент управления Надпись и ввести текст «Информация о читателях и выданных книгах» (рис. 3). Затем изменить начертание и размер шрифта для улучшения внешнего вида;
- переместить поля Кафедра и Телефон вправо для освобождения места для подчиненной формы.
- растянуть подчиненную форму на все свободное пространство.
Откроем форму в режиме просмотра.
Внизу каждой формы находится элемент управления Кнопки перехода, который позволяет перемещаться по записям, создавая новые пустые записи и заполняя их. Данный элемент управления появляется в форме в случае, когда свойство формы Кнопки перехода имеет значение Да.
В случае же изменения значения этого свойства на Нет данный элемент отображаться в форме не будет. В подчиненной форме данный элемент использовать не обязательно.
Поэтому, снова откроем форму Список1 в режиме конструктора, откроем окно Свойства для формы, найдем свойство Кнопки перехода и изменим его значение на Нет.
Создание форм с подчиненной формой
Формы с подчиненной разрешают редактировать данные или из двух связанных таблиц, или из таблицы и запроса, которые связаны типом связей один-ко-многим.
Главная форма в таком случае показывает данные из одной записи, а подчиненная из нескольких записей, которые связаны с записью главной формы. Подчиненные формы должны быть типа ленточная или таблица.
В таких формах часто создают вычисляемые поля, в которых вычисляют итоговые величины по данным из записей подчиненной формы.
Например, создадим форму, которая для каждого читателя выводит список книг, которые у него на руках, с указанием автора книги, названия книги, даты выдачи, даты возврата и поля Пеня, которое создано и вычисляется в запросе Список1.
Пеня начисляется в размере одного процента от стоимости книги за каждый просроченный день. Подсчитаем также общую сумму пени для каждого читателя. Форма будет иметь подчиненную форму со списком книг читателя.
Данные в подчиненную форму будут браться из запроса Список1, который уже создан в предшествующем пункте.
- Начальный макет формы создадим с помощью Мастера форм, а потом улучшим его с помощью Конструктора.
- Выполните такие операции для создания формы мастером форм:
- 1) В окне базы данных выберите вкладку «Формы» и щелкните на кнопке Создать.
2) В окне Новая форма в списке: «Выберите в качестве источника данных таблицу или запрос» раскройте список таблиц и выберите таблицу Читатели. Потом в другом поле выберите Мастер форм и щелкните на кнопке ОК.
3) Появилось окно Создание форм. Из списка Доступные поля перенесите в список Выбранные поля поля NB, Фамилия, Кафедра и Телефон.
Потом в раскрывающемся списке, расположенном выше, раскройте список таблиц и запросов, выберите запрос Список1.
Его поля появятся в списке Доступные поля, перенесите в список Выбранные поля все поля запроса.
4) В следующем окне необходимо выбрать тип изображения данных. Выберите «по Читатели», так как главной формой будет форма, которая показывает сведения о читателях. Отметьте переключатель Подчиненные формы, чтобы другие данные были вставлены в подчиненную форму, и щелкните на кнопке Далее.
5) В следующем окне выберите вид подчиненной формы. Так как нам удобнее всего было бы видеть данные о книгах, которые читаются, представленными в виде таблицы, отметьте переключатель «ленточный» и щелкните на кнопке Далее.
6) Выберите стиль для главной формы. Стиль показывается в окне выбора сразу же, как только вы отметите один из них. Щелкните на кнопке Далее.
7) В следующем окне необходимо задать имена форм — главной и подчиненной. Access создал две формы, связанные одна с одной.
Но вы можете корректировать их в режиме конструктора независимо одну от другой, а также пользоваться подчиненной формой не зависимо от главной.
Дайте главной форме имя Читатели, а подчиненной – Список1. Щелкните на кнопке Готово и вы увидите на экране созданную форму.
На следующем шаге улучшим созданную форму с помощью Конструктора форм.
Добавим теперь в форму Список1 поле, в котором вычисляется общая сумма пени для каждого читателя. Пример такой формы в режиме конструктора приведен на рисунке 25, Конструктором форм добавлено поле “Всего пени”, которое вычисляется, и расположено в области “Примечание формы”.
Рисунок 25. Пример формы Список1 в режиме Конструктора форм
Далее идет подробное описание перечисленных действий.
Откройте подчиненную форму Список1 в режиме конструктора. В области Примечание формы создайте новое поле, которое вычисляется.
Дайте ему имя “Всего пени”, и в окне Свойства для графы Данные задайте формулу: =Sum([Пеня]) , по которой будет вычисляться сумма пени. Измените текст перед этим полем, и ваша новая форма готова. Сохраните сделанные изменения и откройте форму для просмотра.
Вы увидите в форме записи обо всех выданных книгах и внизу в поле общую сумму пени по всем читателям. Обратите внимание на измененные размеры полей, в которых выводится информация о
Рисунок 2.5. Пример формы Список1 в режиме Конструктора форм
книгах. Это сделано, чтобы авторы и название книги выводились в несколько строк, чтобы более полно видеть содержание поля.
Улучшим теперь вид формы Читатели. Для этого откройте форму Читатели в режиме конструктора и выполните такие действия:
а) растяните мышью область “Заголовок формы”, прибавьте элемент управления Надпись и напишите текст «Информация о читателях и выданных книгах» (рисунок 26). Измените шрифт и его размер для лучшего вида.
б) переместите поля Кафедра и Телефон вправо, чтобы освободить больше места для подчиненной формы.
Откройте форму для просмотра.
Внизу каждой формы расположен элемент управления, который называется “Кнопки перехода”. Они разрешают перемещаться по записям, создавать новые пустые записи и заполнять их. Этот элемент управления появляется в форме, если свойство формы “Кнопки перехода” имеет значение “Да”.
Если изменить значения этого свойства на “Нет”, то этого элемента не будет в форме. В подчиненной форме этот элемент не нужен.
Поэтому, снова откройте форму Список1 в режиме конструктора, откройте окно “Свойства” для формы, найдите свойство “Кнопки перехода”, измените на “Нет” значение.
Не нашли то, что искали? Воспользуйтесь поиском:
Как сделать подчиненную форму в access 2010?
Подчиненная форма является элементом управления и, как и все остальные элементы, может быть добавлена в главную форму с помощью Мастера подчиненных форм. При этом ее можно создать заранее, и тогда мастеру нужно будет только указать имя добавляемой формы. Если подчиненная форма еще не создана, мастер поможет ее создать.
В качестве примера добавим в форму «Поставщики» (Suppliers) подчиненную форму, которая будет содержать список товаров текущего-поставщика (в исходной версии базы данных «Борей» товары поставщика отображаются в отдельной связанной форме при нажатии кнопки Просмотр товаров (Review Products)):
- Откройте форму «Поставщики» в режиме Конструктора и отобразите на экране панель элементов, если ее не видно.
- При нажатой кнопке Мастера (Control Wizards) перетащите с панели элементов в область данных формы элемент управления Подчиненная форма/отчет (Subform/ Subreport), поместив ее под всеми остальными элементами. Перед этим можно увеличить высоту области данных, но это необязательно, т. к. она увеличится автоматически после вставки нового элемента.
- В первом диалоговом окне мастера выберите переключатель Имеющиеся таблицы и запросы (Use existing Tables and Queries) и нажмите кнопку Далее (Next).
- Во втором диалоговом окне Мастера подчиненных форм в раскрывающемся списке Таблицы и запросы (Tables/Queries) выберите таблицу «Товары» (Products). В списке Доступные поля (Available Fields) выберите поля для включения в форму (рис. 9.35) и нажмите кнопку Далее (Next).
- В третьем диалоговом окне нужно определить поля, по которым связываются главная и подчиненная формы (рис. 9.36). Можно выбрать их из списка или задать самостоятельно. Так как таблицы «Поставщики» (Suppliers) и «Товары» (Products) связаны, в списке отображается нужная связь. Выберите ее и нажмите кнопку Далее (Next).
- В последнем диалоговом окне нужно задать имя подчиненной формы. По умолчанию предлагается имя «подчиненная форма Товары» (Products subform). Можно оставить-это имя и нажать кнопку Готово.
Рис. 9.35. Второе диалоговое окно Мастера подчиненных форм
Рис. 9.36. Третье диалоговое окно Мастера подчиненных форм
Результат работы мастера представлен на рис. 9.37.
Мастер подчиненных форм удобен тогда, когда подчиненная форма еще не создана.
Если подчиненная форма уже существует, можно просто разместить рядом окно базы данных с раскрытой страницей Формы (Forms) и главную форму, открытую в режиме Конструктора и просто перетащить мышью нужную форму из окна базы данных в главную форму. При этом главная становится подчиненной формой и автоматически устанавливается связь между формами.
Рис. 9.37. Подчиненная форма «Товары» внутри формы «Поставщики»
- Sorter etter
- Как создать подчиненные формы в базе AccessУроки по Microsoft Access
- 9 måneder siden
- Если вы не знаете, как создать подчиненные формы в базе данных Microsoft Access, то посмотрите это видео. Что вас…
11.8. Подчиненная форма Microsoft Access 2010.Dmitrii Dmitrii
Раздел 11. Элементы управления формы. Управление данными и приложением в диалоге. Дополнительные возможност…
- Как сделать СЛОЖНЫЕ формы в базе данных Microsoft Access 2016 (2 часть)Уроки по Microsoft Access
- År siden
- Если вы не знаете как создать базу данных в программе Microsoft Access 2016, то посмотрите это видео. Всего за 6 уроков…
- 13. Создание подчиненной формы «Заказы»GTIFEMBI
- 5 år siden
Продолжаем разрабатывать сложную форму. На этот раз делаем ее подчиненную часть.
Microsoft Access № 78: создание двухуровневых подчинённых форм в AccessАндрей Домостой
4 måneder siden
Как создать двухуровневые подчинённые формы в Access? КУПИТЬ ВИДЕОКУРСЫ ИЛИ ЗАКАЗАТЬ БАЗУ: goo.gl/zgcfyg ВКонта…
- Access для начинающих. Урок 7: Вложенные формыДмитрий Кивганов
- 3 år siden
- Для удобства работы с базами данных можно использовать вложенные формы разного назначения: 1) с готовыми…
- Урок 4 Access. Подчиненные формыMoodle Donguu
- 3 år siden
- Microsoft Access №59: форма подстановки в AccessАндрей Домостой
- 5 år siden
- Создание в Access вспомогательной формы для подстановки значений в главную форму. КУПИТЬ ВИДЕОКУРСЫ ИЛИ ЗАКАЗ…
- Как создать формы в Microsoft Access за 10 минутУроки по Microsoft Access
- 3 år siden
Узнайте, как легко и быстро создать базу данных Access — accesshelp.ru/category/uroki/ Готовые базы Access: 7108.ru/g0203 Если…
- Флажки и группа переключателей в базе данных AccessУроки по Microsoft Access
- 7 måneder siden
- Если вы не знаете, как добавить элементы флажки и переключатели на форму Access, то посмотрите это видео. Также…
- Как создать форму с помощью КОНСТРУКТОРА в базе данных ACCESSУроки по Microsoft Access
- 11 måneder siden
- Если вы не знаете как создать форму Access в режиме конструктора, то посмотрите это видео. В этом скринкасте…
10.1. Виды форм Microsoft Access 2010.Dmitrii Dmitrii
Раздел 10. Формы: основные возможности Управление данными и приложением в диалоге. Дополнительные возможнос…
10.3. Макет формы. Темы оформления Microsoft Access 2010.Dmitrii Dmitrii
Раздел 10. Формы: основные возможности Управление данными и приложением в диалоге. Дополнительные возможнос…
- Microsoft Access № 68: фильтрация при помощи полей со списком AccessАндрей Домостой
- 5 år siden
- Фильтрация в форме Access нужных записей при помощи полей со списком Access. КУПИТЬ ВИДЕОКУРС ИЛИ ЗАКАЗАТЬ БАЗУ:…
- 14. Связывание формGTIFEMBI
- 5 år siden
- Завершающий урок цикла, объединяющий усилия двух предыдущих уроков, в котором выполняется встраивание…
- 68 Подчиненная формаTeachProTube
- 5 år siden
Смотрите полную версию курса Microsoft Access 2010 здесь: teachpro.ru/Course/Access2010?utm_source=youtube&utm_campaign=Access2010 …
12. Создание главной части формы «Заказы»GTIFEMBI
Начинаем разрабатывать сложную форму, которая состоит из двух частей. В первую очередь делаем главную форму.
Microsoft Access № 21: создание в Access зависимых полей со спискомАндрей Домостой
Создадим в Access зависимые поля со списком. КУПИТЬ ВИДЕОКУРСЫ ИЛИ ЗАКАЗАТЬ БАЗУ: goo.gl/zgcfyg ВКонтакте: vk.c…
- Access для начинающих. Урок 8: Навигационная формаДмитрий Кивганов
- 3 år siden
- Если Вам в процессе работы с базой данных приходится часто переключаться между различными формами, то данн…
- Кнопочные формы в базе данных AccessSpecialistTV
- 2 år siden
- Обычно база данных Access содержит большое количество форм и отчётов. Чтобы упростить перемещение по СУБД…
- урок4 Использование форм в AccessСергей Титаков
- År siden
- Использование форм в Access для удобного ввода данных.
- Как создать главную кнопочную форму в Microsoft Access за 9 минутУроки по Microsoft Access
- 3 år siden
Узнайте, как легко и быстро создать базу данных Access — accesshelp.ru/category/uroki/ Готовые базы Access: 7108.ru/g0203 Если…
- Создание однотабличных форм в базе данных Microsoft AccessУроки по Microsoft Access
- 11 måneder siden
- Если вы не знаете как создать форму в базе данных Microsoft Access, то посмотрите это видео. В этом скринкасте на…
- Создание командной кнопки для формы БД AccessУроки по Microsoft Access
- 11 måneder siden
Если вы не знаете, как создать кнопку в форме Access, то посмотрите это видео. Что вас ждет в этом видео? Разбер…
- 11. Создание формы «Склад»GTIFEMBI
- 5 år siden
- Создаем форму с двумя раскрывающимися списками (для удобства ввода списка товаров и для выбора поставщика)
11.5. Управляющие кнопки Microsoft Access 2010.Dmitrii Dmitrii
Раздел 11. Элементы управления формы. Управление данными и приложением в диалоге. Дополнительные возможност…
Урок 2. Создание формы в Access 2010Mix Fix
Видео урок. Создание формы с помощью мастера форм в Access 2010 Моя партнерская программа VSP Group. Подключайся!…
- Как создать вычисляемые поля в форме AccessУроки по Microsoft Access
- 8 måneder siden
- Если вы не знаете, как создать вычисляемые поля на форме базы данных Microsoft Access, то посмотрите это видео….
- Редактирование формыВадим Константинович
- År siden
Группа VK: vk.com/coolsn ———————— Пожалуйста, не нужно рекламировать свои каналы, сайты и так далее….
3.10 Вычисляемые поля Microsoft Access 2010.Dmitrii Dmitrii
Раздел 3. Создание базы данных и работа с таблицами. Основы системы управления базами данных Microsoft Access 2010.
11.6. Свойства формы Microsoft Access 2010.Dmitrii Dmitrii
Раздел 11. Элементы управления формы. Управление данными и приложением в диалоге. Дополнительные возможност…
- 3 Работа с формами в AccessData Digger
- 4 år siden
- В этом уроке вы узнаете, как создавать формы автоматически и вручную, а также продвинутые техники работы…
- Добавление подчиненной таблицы на формуGISpanorama
- 4 år siden
- Описаны основы создания форм с главной и подчиненной таблицами данных.
- Урок 3. Создание формы с помощью конструктора в Access 2010Mix Fix
- 5 år siden
Видео урок. Создание формы с помощью конструктора в Access 2010 Моя партнерская программа VSP Group. Подключайся!…
- Microsoft Access № 14: сортировка и фильтрация при загрузке таблицы (формы) AccessАндрей Домостой
- 3 år siden
- Как задать автоматическую фильтрацию (сортировку) при загрузке таблицы, запроса, формы Access? КУПИТЬ ВИДЕОКУР…
- Microsoft Access № 75: всплывающие формы AccessАндрей Домостой
- År siden
Примеры работы со всплывающими формами Access. КУПИТЬ ВИДЕОКУРСЫ ИЛИ ЗАКАЗАТЬ БАЗУ: goo.gl/zgcfyg ВКонтакте:…
Microsoft Access № 37: фильтр по форме AccessАндрей Домостой