Как сделать чтобы форма в access запускалась при открытии?
Содержание
При открытии БД Access удобно вывести на экран определенную форму, например, панель кнопок управления приложением. Сделаем так, чтобы при открытии нашей базы данных выводилась форма “Панель кнопок”.
Для этого выберем закладку Макрос, нажмем кнопку Создать, при этом появится пустое окно макроса в режиме конструктора. Нажмем на кнопку в столбце Макрокоманда, из списка выберем макрокоманду ОткрытьФорму. В окне Аргументы макрокоманды в качестве Имени формы выберем из списка, открываемого кнопкой, форму “Панель кнопок”. Закроем макрос и сохраним его с именем “AutoExec”.
Теперь закроем нашу БД и откроем ее. При этом автоматически откроется форма “Панель кнопок”. Чтобы открыть БД без автоматического открытия этой формы, надо при открытии базы данных удерживать нажатой кнопку Shift.
Теперь отменим автоматический запуск “Панели кнопок”. Для этого переименуем макрос “AutoExec” в “AutoExec1”, используя пункт меню управления БД Файл / Переименовать.
Задание состоит в том, чтобы реализовать функцию автозапуска для своей базы данных.
Вы можете создать несвязанную форму, которая появляется при открытии базы данных Access 2013. Выполните следующие действия, чтобы создать новую форму и макрос, который автоматически откроет форму:
Создайте новую форму, нажав кнопку «Дизайн формы» в группе «Формы» на вкладке «Создать» ленты.
Доступ открывает форму в представлении «Дизайн».
Сохраните пустую форму, нажав кнопку «Сохранить» на панели быстрого доступа или нажав Ctrl + S.
В диалоговом окне «Сохранить как» введите имя формы и нажмите «ОК».
Вызвать форму как Главное меню. Оставьте форму открытой; вы делаете кнопки для этого позже.
Теперь вы готовы сделать макрос AutoExec, который автоматически откроет форму.
Создайте новый макрос.
Появится пустой макрос.
Добавить действие OpenForm для макроса.
Установите для параметра «Имя формы» имя только что созданной формы (Главное меню).
Чтобы сделать это, щелкните аргумент «Имя формы», щелкните стрелку вниз и выберите форму из раскрывающегося меню, которое появляется.
Закройте макрос, нажмите кнопку «Да», чтобы сохранить его, и назовите его AutoExec.
Вы должны называть свой макрос AutoExec, если вы хотите, чтобы макрос запускался автоматически при каждом открытии базы данных.
Создайте еще один макрос, нажав кнопку «Макро» в группе «Макросы и код» на вкладке «Создать» ленты.
В форме вашего основного меню требуется макрос, чтобы содержать субмакросы, которые будут запускать ваши кнопки. Вы можете сделать все свои кнопки с помощью мастера Command Buttons Wizard, который хранит субмакросы в виде встроенных макросов, но если вы хотите создать свои собственные субмакросы для своих кнопок, вы можете сохранить их в созданном вами макросе.
Нажмите кнопку «Сохранить» или нажмите Ctrl + S, чтобы сохранить новый макрос.
Введите имя макроса и нажмите «ОК».
У вас есть , чтобы дать макросу то же имя, что и форма главного меню, но вы будете менее смущены, если вы это сделаете! Если вы приняли совет на шаге 3, назовите главное меню или главное меню.
Нажмите вкладку для формы главного меню, чтобы вы могли добавлять кнопки.
Теперь вы готовы вернуться в форму вашего основного меню (тот, который вы создали на шаге 1, помните?) И добавить командные кнопки.
Форма готова и появляется при открытии базы данных; все, что ему нужно, это кнопки!
Всем привет! В этой статье я расскажу как сделать информационное сообщение при изменении данных в базе Access.
Как сделать информационное сообщение при изменении данных в базе Access
По умолчанию, когда пользователь вводит или редактирует данные с помощью формы, программа Microsoft Access автоматически сохраняет любые внесенные изменения в таблицах, так как поля формы напрямую связаны с полями соответствующей таблицы. Если пользователь закроет форму или создаст новую запись, все внесенные ранее изменения также автоматически сохраняются. Согласитесь, было бы удобно организовать работу следующим образом: пользователь открывает форму, вносит или изменяет данные. Если он закрывает форму или переходит к новой записи, система выводит информационное сообщение: «Сохранить внесенные изменения?» Если он не вносит изменения, то, соответственно, информационное сообщение не появляется. Также для удобства работы на форме можно создать кнопку «Сохранить». Данная кнопка будет неактивна при запуске самой формы. Как только будут внесены изменения, кнопка «Сохранить» становится активной.
Как это работает?
Откроем любую форму, на которой расположены кнопки «Сохранить», «Новая запись» и «Выход». Кнопка «Сохранить» не доступна.
Внесем изменение в поле «Цена» (350 вместо 250). Кнопка «Сохранить» становится доступной.
Если нажать кнопку «Сохранить», изменения сохранятся, кнопка «Сохранить» станет вновь недоступна. Если создать новую запись или выйти из формы, никаких информационных сообщений не появляется.
Поменяем теперь код бренда на «Красота от природы».
Нажмем кнопку «Выход».
Если нажать «Да», внесенные изменения сохранятся, форма закроется. Если нажать «Нет», код бренда снова станет «Кислородная линия», форма закроется.
Как это сделать?
Шаг 1. Создание формы
Для того, чтобы понять как сделать информационное сообщение при изменении данных в базе Access, необходимо создать простейшую форму. Я буду использовать форму, созданную в базе данных Косметическая продукция.
Если вы не знаете как создать формы в базе данных Access, то посмотрите видео ниже.
Шаг 2. Добавление кнопки «Сохранить»
Переходим в конструктор форм, на панели инструментов нам понадобится инструмент «Кнопка».
Мастер создания кнопок не нужен, нажимаем кнопку «Отмена».
Щелкаем по созданной кнопке и набираем текст «Сохранить».
Далее дважды щелкаем по кнопке, чтобы открыть окно свойств. Переходим на вкладку «Данные», пункт «Доступ» — ставим «Нет».
Переходим на вкладку «Другие» и задаем имя кнопки «cmdSave»
Шаг 3. Вставка VBA-кода на событие «Внесены изменения»
Переходим в свойства формы, вкладка «Событие», пункт «Внесены изменения». Нажимаем кнопку с тремя точками, выбираем пункт «Программы».
VBA код:
Private Sub Form_Dirty(Cancel As Integer) Me.cmdSave.Enabled = True End Sub
При загрузке формы кнопка cmdSave недоступна (см. Шаг 2) (значение свойства Enabled равно False). Как только пользователь вносит или изменяет данные срабатывает событие формы «Внесены изменения» и кнопка cmdSave становится доступа (значение Enabled меняется на True).
Шаг 4. Создание булевой переменной
Для отслеживания статуса кнопки «Сохранить» (нажата кнопка или нет) создадим переменную Saved с помощью оператора Private. Для этого вставим строку Private Saved As Boolean под строкой Option Compare Database в самом верху экрана.
Шаг 5. Вставка VBA-кода на событие «Нажатие кнопки»
Дважды щелкаем по кнопке «Сохранить», переходим в окно свойств, вкладка «Событие», пункт «Нажатие кнопки». Нажимаем кнопку с тремя точками, выбираем пункт «Программы».
VBA код:
Private Sub cmdSave_Click() Saved = True DoCmd.RunCommand (acCmdSaveRecord) Me.cmdSave.Enabled = False Saved = False End Sub
Если мы внесли изменения, кнопка cmdSave становится доступна (шаг 3). Когда мы нажимаем кнопку «Сохранить», булевая переменная Saved (шаг 4) получает значение True (т.е. кнопка cmdSave нажата), происходит сохранение изменений, после этого кнопка cmdSave становится снова недоступной, а переменная Saved получает значение False до тех пор пока снова не будет нажать кнопка «Сохранить».
Шаг 6. Вставка VBA-кода на событие «До обновления»
Переходим в свойства формы, вкладка «Событие», пункт «До обновления». Нажимаем кнопку с тремя точками, выбираем пункт «Программы».
VBA код:
Private Sub Form_BeforeUpdate(Cancel As Integer) Dim Response As Integer If Saved = False Then Response = MsgBox("Сохранить внесенные изменения?", vbYesNo, "Сохранить изменения?") If Response = vbNo Then Me.Undo End If Me.cmdSave.Enabled = False End If End Sub
Событие До обновления (BeforeUpdate) возникает при любом изменении данных в записи или элементе управления. Если пользователь нажмет кнопки «Новая запись» или «Выход», не кликнув перед этим на кнопку «Сохранить», то появится информационное окно «Сохранить изменения?» (MsgBox(«Сохранить внесенные изменения?», vbYesNo, «Сохранить изменения?»)). Если пользователь нажмет «ДА», то все внесенные изменения сохраняются. Если пользователь нажмет «НЕТ», произойдет отмена всех изменений (Me.Undo). Далее кнопка cmdSave снова станет не доступна независимо от того, нажал пользователь «Да» или нажал «Нет» (Me.cmdSave.Enabled = False).
В данной статье мы разобрали как сделать информационное сообщение при изменении данных в базе Access.
Если вам нужна готовая база данных Access, то ознакомьтесь со списком представленным ЗДЕСЬ.
—————————————————
Полезные ссылки:
Урок 17: мастер запросов
Урок 16: запрос на создание таблицы
Урок 15: запросы с параметром
Урок 14: запросы с вычисляемыми полями
Урок 13: Как определить ГОД, КВАРТАЛ, МЕСЯЦ, ДЕНЬ НЕДЕЛИ в запросе
Урок 12: Как создать ЗАПРОС С УСЛОВИЕМ
Урок 11: Как задать условия для ТЕКСТОВЫХ полей в запросах
Уроки по SQL-запросам
При открытии базы данных Microsoft Access могут выполняться некоторые действия. Чаще всего это открытие специальной формы, так называемой Главной кнопочной формы, вывод специальных меню или панелей инструментов, скрытие стандартных меню и т. д. Для определения этих действий используется диалоговое окно Параметры запуска (Startup). Однако иногда требуется при запуске приложения выполнить более сложный набор действий, чем тот, что позволяет задать это диалоговое окно. Например, может потребоваться заранее открыть несколько форм (не показывая их на экране), чтобы потом их отображение не занимало много времени, проверить некоторые условия или запросить ввод некоторых данных. Все это можно сделать с помощью специального макроса, который называется «AutoExec». При открытии базы данных Access проверяет наличие этого макроса и, если он существует, выполняет его. При создании макроса «AutoExec» следует помнить, что Access сначала выполнит действия, определенные в окне Параметры запуска (Startup), а затем — макрос «AutoExec», поэтому в них не должно быть противоречивых действий.