Applies ToAccess para Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Se aplica a

Objeto Form

Objeto Report

Determina la expresión de cadena especificada por el argumento OpenArgs del método OpenForm que abrió un formulario. Valor Variant de lectura y escritura.

expresión.OpenArgs

expresión Requerido. Una expresión que devuelve uno de los objetos de la lista Se aplica a.

Observaciones

Esta propiedad está disponible únicamente mediante una macro o código de Visual Basic para Aplicaciones (VBA) con el método OpenForm del objeto DoCmd. El valor de esta propiedad es de solo lectura en todas las vistas.

Para usar la propiedad OpenArgs, abra un formulario mediante el método OpenForm del objeto DoCmd y establezca el argumento OpenArgs en la expresión de cadena que quiera. Después, se puede usar el valor de la propiedad OpenArgs en código para el formulario (por ejemplo, en un procedimiento de evento Open). También puede hacer referencia al valor de la propiedad en una macro (como una macro Open) o una expresión, como una expresión que establece la propiedad ControlSource para un control del formulario.

Por ejemplo, supongamos que el formulario abierto es una lista de formulario continuo de clientes. Si quiere que el foco se desplace a un registro específico de cliente cuando se abra el formulario, puede establecer la propiedad OpenArgs en el nombre del cliente y, después, usar la acción FindRecord en una macro Open para mover el foco al registro del cliente con el nombre especificado.

Ejemplo

En el siguiente ejemplo se usa la propiedad OpenArgs para abrir el formulario Empleados por un registro de empleado específico y se muestra cómo establece el método OpenForm la propiedad OpenArgs. Puede ejecutar este procedimiento según corresponda, por ejemplo, cuando se produce el evento AfterUpdate para un cuadro de diálogo personalizado que se usa para escribir información nueva sobre un empleado.

Sub OpenToCallahan()    DoCmd.OpenForm "Employees", acNormal, , , _        acReadOnly, , "Callahan"End SubSub Form_Open(Cancel As Integer)    Dim strEmployeeName As String    ' If OpenArgs property contains employee name, find    ' corresponding employee record and display it on     ' form. For example,if the OpenArgs property     ' contains "Callahan", move to first "Callahan"     ' record.    strEmployeeName = Forms!Employees.OpenArgs    If Len(strEmployeeName) > 0 Then        DoCmd.GoToControl "LastName"        DoCmd.FindRecord strEmployeeName, , True, , _           True, , True    End IfEnd Sub

En el ejemplo siguiente se usa el método FindFirst para localizar el empleado especificado en la propiedad OpenArgs.

Private Sub Form_Open(Cancel As Integer)    If Not IsNull(Me.OpenArgs) Then        Dim strEmployeeName As String        strEmployeeName = Me.OpenArgs        Dim RS As DAO.Recordset        Set RS = Me.RecordsetClone        RS.FindFirst "LastName = '" & _            strEmployeeName & "'"        If Not RS.NoMatch Then            Me.Bookmark = RS.Bookmark        End If    End IfEnd Sub

¿Necesita más ayuda?

¿Quiere más opciones?

Explore las ventajas de las suscripciones, examine los cursos de aprendizaje, aprenda a proteger su dispositivo y mucho más.

Las comunidades le ayudan a formular y responder preguntas, enviar comentarios y leer a expertos con conocimientos extensos.