В этом руководстве мы узнаем, как открывать или закрывать формы Access с помощью VBA.
Открытие формы доступа
Чтобы открыть форму в Access, используйте метод DoCmd.OpenForm:
DoCmd.OpenForm "AccessForm"
Откроется форма с именем «AccessForm»:
AccessForm отображается в области навигации
Открытая форма с критериями
Этот код откроет форму в Access с определенными критериями:
DoCmd.OpenForm "AccessForm", acNormal,, "ID = 10"
Синтаксис DoCmd.OpenForm
Полный синтаксис метода:
DoCmd.OpenForm (NameOfForm, FormView, FilterName, WhereCondition, DataMode, Оконный режим, OpenArgs) куда:
Параметр | Описание |
---|---|
NameOfForm | Обязательно - это имя формы, которую вы хотите открыть. |
FormView | Необязательный и позволяет указать вид формы. Это может быть: acDesign, acFormDS, acFormPivotChart, acFormPivotTable, acLayout, acNormal, acLayout или acPreview. По умолчанию - acNormal. |
FilterName | Необязательный и позволяет указать имя запроса или строку SQL для использования в качестве фильтра. |
WhereCondition | Необязательный и позволяет выполнять запрос типа where без использования слова where. |
DataMode | Необязательный и позволяет указать режим ввода данных. Это может быть: acFormAdd, acFormEdit, acFormPropertySettings или acFormReadOnly. По умолчанию - acFormPropertySettings. |
Оконный режим | Необязательно и устанавливает отображение оконного режима. Это может быть: acDialog, acHidden, acIcon, acWindowNormal. По умолчанию - acWindowNormal. |
OpenArgs | На необязательные можно ссылаться в макросах и выражениях. |
Программирование на VBA | Генератор кода действительно работает для вас!
Закройте форму в Access
Используйте DoCmd.Close, чтобы закрыть открытую форму:
DoCmd.Close acForm, "AccessForm"
Закрыть форму и сохранить
Этот код VBA закроется и сохранит форму доступа:
DoCmd.Close acForm, "AccessForm", acSave Да
Запрашивать перед закрытием формы
Эта процедура предложит пользователю перед закрытием формы:
Public Sub CloseFormWithConfirmation (FormName As String) If MsgBox («Вы уверены, что хотите закрыть это окно?», VbYesNo + vbQuestion, «Confirmation») = vbYes Then DoCmd.Close acForm, FormName End If End Sub
Вы можете назвать это так:
Закрытая подпрограмма CloseFormWithConfirmation_Example () Вызов CloseFormWithConfirmation ("AccessForm") End Sub
Устали искать примеры кода VBA? Попробуйте AutoMacro!
Синтаксис DoCmd.Close
Полный синтаксис метода:
DoCmd.Close (ObjectType, ObjectName, ObjectSave) куда:
Параметр | Описание |
---|---|
ObjectType | Необязательно, и это тип объекта, который вы хотите закрыть. Это может быть форма, отчет и т. Д. |
ObjectName | Необязательный и является именем объекта, который вы хотите закрыть. |
ObjectSave | Необязательный и используется для указания, хотите ли вы сохранить внесенные изменения. |