Evento Form.Open (Access)

El evento Open se produce cuando se abre un formulario, pero antes de que se muestre el primer registro.

Sintaxis

más sencilla.Abrir (cancelar)

expresión Variable que representa un objeto Form.

Parameters

Nombre Obligatorio/opcional Tipo de datos Descripción
Cancel Obligatorio Integer El valor determina si se produce la operación de abrir el formulario o el informe. Si se establece el argumento Cancelar en Verdadero (1), se cancela la apertura del formulario o informe.

Comentarios

Mediante la ejecución de una macro o un procedimiento de evento cuando se produce el evento Open de un formulario se puede, por ejemplo, cerrar otra ventana o situar el foco en un control determinado del formulario. También puede ejecutar una macro o procedimiento de evento que solicite la información necesaria antes de abrir o imprimir el formulario o informe.

Por ejemplo, una macro o procedimiento de evento Open puede abrir un cuadro de diálogo personalizado en el que el usuario escriba los criterios para filtrar el conjunto de registros que se mostrarán en un formulario o el intervalo de fechas que se incluirá en un informe.

El evento Abierto no se produce cuando se activa un formulario que ya está abierto; por ejemplo, al cambiar al formulario desde otra ventana de Microsoft Access o usar la acción OpenForm en una macro para llevar el formulario abierto a la parte superior. Sin embargo, el evento Activate se produce en estas situaciones.

Al abrir un formulario basado en una consulta subyacente, Microsoft Access ejecutará la consulta para el formulario antes de ejecutar la macro o procedimiento de evento Open.

Si la aplicación puede tener más de un formulario cargado a la vez, use los eventos Activar y Desactivar en lugar del evento Abrir para mostrar y ocultar las barras de herramientas personalizadas cuando el foco se mueva a un formulario diferente.

El evento Abierto se produce antes que el evento Load , que se activa cuando se abre un formulario y se muestran sus registros.

La primera vez que se abre un formulario, se producen los eventos siguientes, en el orden indicado:

OpenLoadResizeActivateCurrent

El evento Close se produce después del evento Unload , que se desencadena después de cerrar el formulario, pero antes de que se quite de la pantalla.

Al cerrar un formulario, se producen los eventos siguientes, en el orden indicado:

UnloadDeactivateClose

Cuando se produce el evento Cerrar , puede abrir otra ventana o solicitar el nombre del usuario para realizar una entrada de registro que indique quién usó el formulario o informe.

Si está intentando decidir si desea usar el evento Abrir o Cargar para la macro o el procedimiento de evento, una diferencia importante es que el evento Abrir se puede cancelar, pero el evento Cargar no. Por ejemplo, si está creando dinámicamente un origen de registros para un formulario en un procedimiento de evento para el evento Abierto del formulario, puede cancelar la apertura del formulario si no hay registros para mostrar. Igualmente, el evento Unload se puede cancelar, pero el evento Close no.

Ejemplo

En el ejemplo siguiente se muestra cómo puede cancelar la apertura de un formulario cuando el usuario elige un botón No . Un cuadro de mensaje pregunta al usuario si desea especificar detalles del pedido. Si el usuario elige No, no se abre el formulario Detalles del pedido .

Para probar el ejemplo, agregue el procedimiento de evento siguiente a un formulario.

Private Sub Form_Open(Cancel As Integer) 
 Dim intReturn As Integer 
 intReturn = MsgBox("Enter order details now?", vbYesNo) 
 Select Case intReturn 
 Case vbYes 
 ' Open Order Details form. 
 DoCmd.OpenForm "Order Details" 
 Case vbNo 
 MsgBox "Remember to enter order details by 5 P.M." 
 Cancel = True ' Cancel Open event. 
 End Select 
End Sub

Soporte técnico y comentarios

¿Tiene preguntas o comentarios sobre VBA para Office o esta documentación? Vea Soporte técnico y comentarios sobre VBA para Office para obtener ayuda sobre las formas en las que puede recibir soporte técnico y enviar comentarios.