Метод DoCmd.Close (Access)
Метод Close выполняет действие закрытия в Visual Basic.
Синтаксис
выражение.Close (ObjectType, ObjectName, Save)
выражение: переменная, представляющая объект DoCmd.
Параметры
Имя | Обязательный или необязательный | Тип данных | Описание |
---|---|---|---|
ObjectType | Необязательный | AcObjectType | Константа AcObjectType, представляющая тип закрываемого объекта. |
ObjectName | Необязательный | Variant | Строковое выражение, которое является допустимым именем объекта типа, выбранного аргументом ObjectType. |
Save | Необязательный | AcCloseSave | Константа AcCloseSave, указывающая, нужно ли сохранять изменения в объекте. Значение по умолчанию — acSavePrompt. |
Примечания
Используйте метод Close, чтобы закрыть указанное окно Microsoft Access или активное окно, если не указано определенное окно.
Если оставить аргументы ObjectType и ObjectName пустыми (для аргумента ObjectType предполагается константа по умолчанию acDefault), Access закрывает активное окно. Если указать аргумент Save и оставить аргументы ObjectType и ObjectName пустыми, необходимо включить запятые аргументов ObjectType и ObjectName .
Примечание.
Если у формы есть элемент управления, привязанный к полю, для свойства Required которого задано значение "Да", а форма закрыта с помощью метода Close без ввода данных для этого поля, сообщение об ошибке не отображается. Все изменения, внесенные в запись, будут отменены. Когда форма закрывается с помощью пользовательского интерфейса, Access отображает оповещение.
Чтобы отобразить сообщение об ошибке, используйте метод RunCommand для вызова команды acCmdSaveRecord перед вызовом метода Close. Это приведет к ошибке во время выполнения, если одно или несколько обязательных полей имеют значение NULL. Этот способ показан в следующем примере.
Private Sub cmdCloseForm_Click()
On Error GoTo Err_cmdCloseForm_Click
DoCmd.RunCommand acCmdSaveRecord
DoCmd.Close
Exit_cmdCloseForm_Click:
Exit Sub
Err_cmdCloseForm_Click:
MsgBox Err.Description
Resume Exit_cmdCloseForm_Click
End Sub
Пример
В следующем примере используется метод Close, чтобы закрыть форму Order Review (Проверка заказа), сохранив все изменения в форме, не выполняя запрос.
DoCmd.Close acForm, "Order Review", acSaveYes
Поддержка и обратная связь
Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.