Метод DoCmd.OpenForm (Access)
Метод OpenForm выполняет действие OpenForm в Visual Basic.
Синтаксис
выражение.OpenForm (FormName, View, FilterName, WhereCondition, DataMode, WindowMode, OpenArgs)
выражение: переменная, представляющая объект DoCmd.
Параметры
Имя | Обязательный или необязательный | Тип данных | Описание |
---|---|---|---|
FormName | Обязательный | Variant | Строковое выражение, являющееся допустимым именем формы в текущей базе данных. При выполнении кода Visual Basic, содержащего метод OpenForm в базе данных библиотеки, Access ищет форму с этим именем сначала в базе данных библиотеки, а затем в текущей базе данных. |
View | Необязательный | AcFormView | Константа AcFormView, указывающая представление, в котором открывается форма. Значение по умолчанию — acNormal. |
FilterName | Необязательный | Variant | Строковое выражение, являющееся допустимым именем запроса в текущей базе данных. |
WhereCondition | Необязательный | Variant | Строковое выражение, являющееся допустимым предложением WHERE в SQL без слова WHERE. |
DataMode | Необязательный | AcFormOpenDataMode | Константа AcFormOpenDataMode, указывающая режим ввода данных для формы. Это относится только к формам, открываемым в режиме формы или режиме таблицы. Значение по умолчанию — acFormPropertySettings. |
WindowMode | Необязательный | AcWindowMode | Константа AcWindowMode, указывающая режим окна, в котором открывается форма. Значение по умолчанию — acWindowNormal. |
OpenArgs | Необязательный | Variant | Строковое выражение. Это выражение используется для установки свойства OpenArgs формы. Этот параметр можно затем использовать в коде в модуле формы, например в процедуре обработки события Open. Свойство OpenArgs также можно указывать в макросах и выражениях. Предположим, что вы открываете ленточную форму со списком клиентов. Если вы хотите, чтобы при открытии формы фокус переместился к записи определенного клиента, вы можете указать имя клиента с аргументом OpenArgs, а затем использовать метод FindRecord для перемещения фокуса на запись клиента с указанным именем. |
Примечания
Используйте метод OpenForm, чтобы открыть форму в режиме формы, конструктора форм, режиме предварительного просмотра или режиме таблицы. Он позволяет выбирать режим ввода данных и режим окна для формы, а также ограничивать количество записей, отображаемых в форме.
Максимальная длина аргумента WhereCondition — 32 768 символов (в отличие от аргумента действия WhereCondition в окне макроса, максимальная длина которого составляет 256 символов).
Пример
В следующем примере открывается форма Employees (Сотрудники) в режиме формы и отображаются только записи со значением King в поле LastName (Фамилия). Можно изменять отображаемые записи, а также добавлять новые записи.
DoCmd.OpenForm "Employees", , ,"LastName = 'King'"
В следующем примере показано, как открыть форму frmMainEmployees в режиме формы и отобразить только записи, которые относятся к отделу, выбранному в поле со спискомcboDept. Можно изменять отображаемые записи, а также добавлять новые записи.
Private Sub cmdFilter_Click()
DoCmd.OpenForm "frmMainEmployees", , , "DepartmentID=" & cboDept.Value
End Sub
В следующем примере показано, как использовать аргумент WhereCondition метода OpenForm, чтобы отфильтровать записи, отображаемые в форме при ее открытии.
Private Sub cmdShowOrders_Click()
If Not Me.NewRecord Then
DoCmd.OpenForm "frmOrder", _
WhereCondition:="CustomerID=" & Me.txtCustomerID
End If
End Sub
Поддержка и обратная связь
Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.