Как сделать кнопочную форму через макросы

Добавил пользователь Евгений Кузнецов
Обновлено: 05.10.2024

Задание 4. Создайте с помощью конструктора форму-меню с кнопками для выполнения ранее составленных запросов, вывода форм и отчетов и запуска макросов. Форма-меню должна появляться автоматически сразу после загрузки базы данных. В форме должна быть также кнопка для закрытия базы данных и выхода из Access.

Технология

Создайте макрос для автозагрузки формы-меню. Для этого в окне базы данных в списке объектов выберите Макросы и щелкните по кнопке Создать. В окне макроса в столбце Макрокоманды разверните список и выберите макрокоманду Открыть форму. В строку аргумента Имя формы введите текст: МЕНЮ. Закройте и сохраните макрос, присвоив ему имя Autoexec.

Создайте еще один макрос для выхода из Access. Для этого в новый макрос введите всего одну макрокоманду Выход. Выберите для аргумента Параметры значение Сохранить все. Сохраните макрос, присвоив ему имя Выход из Access.

Создайте макрос для выполнения запроса Подсчет коммерческих по группам. Для этого в новый макрос введите одну макрокоманду ОткрытьЗапрос. Для определения аргумента Имя запроса выберите из раскрывающегося списка название запроса: Подсчет коммерческих по группам. Режим данных - только чтение. Закройте и сохраните макрос, присвоив ему имя Количество коммерческих студентов в группах.

Используя макрокоманды ОткрытьФорму и ОткрытьОтчет, аналогичным образом можно создать макросы из одной команды для открытия одной из ранее созданных форм и одного отчета.

Создайте с помощью конструктора новую форму-меню. Для этого в окне База данных для объектов Формы щелкните по строке Создание формы в режиме конструктора. Появится форма, содержащая только одну область данных. Добавьте область заголовка формы. Для этого щелкните правой клавишей мыши в области данных формы и выберите соответствующий пункт в контекстном меню. Сократите до нуля область примечаний.

Введите в область заголовка формы надпись База данных Академии. Подберите оптимально местоположение надписи, ее размер и шрифт.

Расположите окна формы-меню и вкладки Макросы базы данных так, чтобы они были одновременно видны. Перетащите мышью все созданные значки макросов (кроме макроса Autoexec) из вкладки окна базы данных в окно формы-меню. Подберите надлежащий размер и местоположение значков, превратившихся в кнопки меню. Отредактируйте названия кнопок меню.

Перейдите в режим просмотра формы. Проверьте работу меню. Сохраните форму и присвойте ей имя МЕНЮ.

Отключите вертикальные и горизонтальные полосы прокрутки, область выделения и поле номера записи. Для этого в режиме конструктора форм откройте окно свойств формы, щелкнув по кнопке инструментальной панели с соответствующим названием. Установите в окне вкладку Макет. Установите значение для свойства Полосы прокрутки - Отсутствуют. Установите для свойств Область выделения и Кнопки перехода значение - Нет.

Для того, чтобы сделать рельефными кнопки формы снимите флажок Элементы управления из тем Windows в формах, расположенный на вкладке Формы и отчеты в окне СЕРВИС/Параметры. Примените серый цвет заливки для всех областей формы.


Рис. 6.3. Примерный вид формы меню

Закройте базу данных и вновь ее загрузите. Форма МЕНЮ должна автоматически появиться на экране.

Задание 5. Создайте с помощью диспетчера кнопочных форм главную кнопочную форму и дополнительные к ней страницы для работы с двумя задачами: Учебный процесс и Оплата обучения. Поместите на кнопочных формах-страницах кнопки для запуска основных процедур, обеспечивающих решение соответствующих задач. Создайте в главной кнопочной форме кнопку для выхода из приложения (закрытия базы данных), кнопку для выхода из Access, кнопку для перехода в режим редактирования самой кнопочной формы. Предусмотрите в кнопочных формах-страницах кнопки возврата к главной кнопочной форме.

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

Технология

Для запуска диспетчера кнопочных форм выполните команду СЕРВИС/Служебные программы/Диспетчер кнопочных форм. После подтверждения необходимости создать кнопочную форму появится окно диспетчера, содержащее строку с названием главной кнопочной формы Главная кнопочная форма (по умолчанию).

Добавьте к главной форме одну страницу. Для этого щелкните по кнопке Создать и введите в окно Создание имя новой страницы кнопочной формы: Учебный процесс. Щелкните по кнопке Ok. Введенная строка появится в окне диспетчера. Добавьте еще одну страницу, еще раз щелкнув по кнопке Создать. Введите название страницы: Оплата обучения. Окно диспетчера кнопочных форм примет вид как на рис. 6.4.


Рис. 6.4. Вид окна Диспетчер кнопочных форм

Создайте в главной кнопочной форме кнопки перехода на другие страницы. Для этого в окне диспетчера выделите строку Главная кнопочная форма и щелкните по кнопке Изменить. Появится окно Изменение страницы кнопочной формы. Щелкните по кнопке Создать. Введите в окне Изменение элемента кнопочной формы значение поля Текст - Учебный процесс. Выберите из списков значения полей Команда - Перейти к кнопочной форме, Кнопочная форма - Учебный процесс. Щелкните по кнопке Ok. По аналогии, еще раз щелкнув по кнопке Создать, определите кнопку для перехода на страницу Оплата обучения.

Создайте кнопки управления для запуска процедур на странице Учебный процесс. Для этого выделите в окне диспетчера строку Учебный процесс и щелкните по кнопке Изменить. В окне Изменение страницы кнопочной формы щелкните по кнопке Создать. Появится окно Изменение элемента кнопочной формы. Введите в поле Текст название кнопки: Создание экзаменационных ведомостей. В поле Команда выберите из списка команду Выполнить макрос. В поле Макрос выберите из списка Макрос для создания ведомостей. Щелкните по кнопке Ok.

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

Поместите на страницу формы Учебный процесс кнопку для возврата на главную кнопочную форму. Для этого, щелкнув по кнопке Создать определите следующие значения полей: Текст - Возврат к главной форме, Команда - Перейти к кнопочной форме, Кнопочная форма - Главная кнопочная форма. Щелкните по кнопке Ok.

Аналогично п.п. 4-7 создайте кнопки для выполнения процедур и возврата в главную кнопочную форму на странице Оплата обучения.

Добавьте на главную кнопочную форму кнопку закрытия базы данных (приложения). Для этого закройте окно изменения страницы кнопочной формы и перейдите в окно диспетчера кнопочных форм. Выделите строку Главная кнопочная форма и щелкните по кнопке Изменить. В окне Изменение элемента кнопочной формы щелкните по кнопке Создать и введите название кнопки: Закрыть базу данных, выберите из списка команду: Выйти из приложения.

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

Проверьте работу кнопочной формы. Для этого в окне базы данных щелкните по объекту Формы и откройте форму Кнопочная форма. Совершите переход на страницу Учебный процесс, запустите кнопками процедуры, затем вернитесь в главную форму. Закройте базу данных.

Откройте базу данных Академия и добавьте в главную кнопочную форму еще одну кнопку для редактирования самой кнопочной формы, необходимую для дальнейшего совершенствования схемы управления приложением в будущем. Для этого выполните команду СЕРВИС/Слу­жеб­ные программы/Диспетчер кнопочных форм. Выделите в окне диспетчера строку Главная кнопочная форма и щелкните по кнопке Изменить. В окне Изменение страницы кнопочной формы щелкните по кнопке Создать. Введите в окне Изменение элемента кнопочной формы значение поля Текст: Редактирование кнопочной формы и выберите из списка команду: Конструктор приложения. Щелкните по кнопке Ok.Переместите введенную кнопку вверх на две позиции. Закройте все окна диспетчера кнопочных форм и откройте главную кнопочную форму через окно базы данных. Проверьте правильность работы созданной кнопки.

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

Щелкните правой клавишей мыши по левой части области данных и в контекстном меню выберите пункт Свойства. Установите вкладку Макет. Щелкните по кнопке свойства Рисунок. Появится окно обзора для выбора файла с рисунком. Укажите путь к файлам с рисунками, Выберите какой-либо файл с рисунком. Закройте окно обзора, окно свойств и перейдите в режим просмотра формы. Возможный окончательный вид главной кнопочной формы представлен на рис.

Обеспечьте открытие главной кнопочной формы при открытии базы данных Академия. Для этого выполните команду СЕРВИС/Параметры запуска. В окне Параметры запуска выберите из списка в поле Вывод формы/страницы значение Кнопочная форма.

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

Ведь пользоваться кнопкой для запуска макроса гораздо удобнее и практичнее, чем каждый раз заходить в меню разработчика и запускать его через список макросов (Alt+F8).

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

Для начала следует создать саму кнопку:

Макро VBA Excel

Отложим запись макроса .

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

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

Аналогичным образом можно присвоить макрос и для других активных элементов, например, чекбоксов (флажков/галочек).

2. Изучение способов создания макросов. Основные вопросы.

3. Получение необходимых сведений о шифровании БД, использовании паролей, защите БД.

4. Приобретение практического навыка шифрования БД, установки паролей, создании скомпилированного файла БД.

Общие сведения

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

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

Кнопочная форма

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

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

1. Открыть область переходов.

2. Выбрать вкладку Формы.

3. Открыть требуемую форму.

А благодаря кнопочной форме достаточно просто щелкнуть на кнопке.

Область переходов

Используя кнопочную форму, можно объединять ранее созданные объекты БД в одном приложении. Основным элементом внешнего вида приложения, создаваемого пользователем, является кнопочная форма.

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

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

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

Работа с кнопками

Кнопка является простейшим элементом управления формы и используется для запуска макроса или подпрограммы VBA.

В MS Access благодаря макросам, запускаемым с помощью кнопок, можно выполнять самые разные задачи:

1. Открывать и отображать другие формы.

2. Открывать диалоговые окна для получения дополнительной информации.

3. Открывать и печатать отчеты.

4. Искать записи или выполнять фильтрацию.

5. Выходить из MS Access.

На рис. 11.2 показана кнопка Кнопка0 и окно свойств с доступными для данной кнопки событиями.


рис. 11.2. События кнопки

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

Создание кнопок

Кнопки чаще всего используются для запуска макросов. MS Access предлагает два способа их создания:

· с помощью элемента управления Кнопка;

· путем перетаскивания имени макроса из списка макросов БД в данную форму.

Использование Мастера для создания кнопки было рассмотрено в лабораторной работе №9. Но Мастер создает не макрос, а VBA-модуль.

Если требуется использовать макросы, то кнопку надо создать без помощи Мастера.

Это можно сделать разными способами:

1. Отключить кнопку Использовать Мастера в группе Элементы управления контекстного меню Инструменты конструктора форм – Конструктор ленты инструментов. Далее выбрать элемент управления Кнопка и поместить его в нужное место формы.

2. С включенной кнопкой Использовать Мастера выбрать элемент управления Кнопка, поместить его в нужное место формы, после появления окна Мастера на экране отказаться от его помощи, нажав кнопку Отмена.

3. Если в форме уже есть кнопка, ее можно дублировать с помощью команд Копировать – Вставить.

Связывание кнопки с макросом

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

Чтобы связать кнопку с запуском макроса, достаточно ввести имя макроса в поле одного из свойств событий этой кнопки (рис. 11.3).


рис. 11.3. Связывание кнопки с макросом

Чаще других для запуска макроса используется свойство Нажатие кнопки, которое позволяет запустить макрос, щелкнув на данной кнопке.

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

Также на вкладке Макет окна свойств кнопки необходимо изменить имя кнопки в поле Подпись, чтобы было понятно назначение кнопки.

и 10 пункт главная кнопочная у меня она почему то перестала выводить название кнопок, а потом и вовсе какойто макрос не работает стало при открытии выдавать((


Главная кнопочная форма
Помогите пожалуйста, создала ГЛАВНУЮ КНОПОЧНУЮ ФОРМУ, она не открывается в чем причина

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


Главная кнопочная форма Access
Я случайно удалила в Accesse значок главной кнопочной формы, попыталась удалить ее полностью, не.

Главная кнопочная форма-открытие Exel
Всем доброго времени суток. У меня такая вот проблема: нужно создать кнопочную форму из которой.

Задание выложите в теме текстом.

Задание 6. Подключение макросов. Рассчитываемые поля
Задание 8. Фильтрация данных *там нужно на кнопки Применить фильтр и отменить фильтр тоже подключить фильтрацию макросами
10.Создание главной формы системы
там один уровень 4 кнопки
ссылки на формы и выход..

так то вроде ничего сложного но у меня макросы глючат эти((
и форма слетает программа просит активацию может поэтому
Да и макросы мне не совсем понятны(((

Спасибо!! работает все.. я до этого делала уже формы такие но тут фиг пойми почему она вместо названий кнопок показывала ошибку Имя вроде было или чтото в общем там задано а в форму не выдавал а потом я начала прям в макете вводить и вообще все поплыло))
Маркосы никто не любит.. да из за того что они и тупят часто, у меня они там типа все не работают но созданы и полключены вроде))) но фиг с ним попробую так сдать.. не примет так придется домучивать но так то там все работает кроме них ))))

Я сделал всего 4 исправления в 12-14 кликов мышкой .
- изменил базовый запрос кнопочной формы (добавил поле названия кнопок)
- сменил источник данных контрола описания кнопки .
- Ублал лишнюю команду в макросе открытия кнопочной формы.
Всё.

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