Evento Form.Open (Access)
O evento Open ocorre quando um formulário é aberto, mas antes de o primeiro registro ser exibido.
expressão. Abrir (Cancelar)
expressão Uma variável que representa um objeto Form.
Nome | Obrigatório/Opcional | Tipo de dados | Descrição |
---|---|---|---|
Cancel | Obrigatório | Inteiro | A configuração determina se a abertura do formulário ou relatório deverá ocorrer. Definir o argumento Cancelar como True (1) cancela a abertura do formulário ou relatório. |
Ao executar uma macro ou um procedimento de evento quando ocorre o evento Open de um formulário, você pode fechar outra janela ou mover o foco para um determinado controle em um formulário. É possível também executar uma macro ou um procedimento de evento que solicite informações necessárias antes de o formulário ou relatório ser aberto ou impresso.
Por exemplo, uma macro ou procedimento de evento Open pode abrir uma caixa de diálogo personalizada para que o usuário insira os critérios para filtrar o conjunto de registros a serem exibidos em um formulário ou o intervalo de dados a ser incluído em um relatório.
O evento Open não ocorre quando você ativa um formulário que já está aberto; por exemplo, quando você alterna para o formulário de outra janela no Microsoft Access ou usa a ação OpenForm em uma macro para levar o formulário aberto para a parte superior. Por outro lado, o evento Activate ocorre nessas situações.
Quando um formulário é aberto fundamentado em uma consulta de base, o Microsoft Access executa essa consulta para o formulário antes de executar a macro ou procedimento de evento Open.
Se seu aplicativo puder ter mais de um formulário carregado por vez, use os eventos Ativar e Desativar em vez do evento Abrir para exibir e ocultar barras de ferramentas personalizadas quando o foco se mover para um formulário diferente.
O evento Open ocorre antes do evento Load , que é disparado quando um formulário é aberto e seus registros são exibidos.
Assim que você abre um formulário, os eventos a seguir ocorrem nesta ordem:
Abrir → carregar → Redimensionar → Ativar → atual
O evento Fechar ocorre após o evento Descarregar , que é disparado depois que o formulário é fechado, mas antes de ser removido da tela.
Quando você fecha um formulário, os eventos a seguir ocorrem nesta ordem:
Descarregar → Desativar → Fechar
Quando o evento Fechar ocorrer, você pode abrir outra janela ou solicitar o nome do usuário para fazer uma entrada de log indicando quem usou o formulário ou relatório.
Se você estiver tentando decidir se deve usar o evento Open ou Load para o procedimento de macro ou evento, uma diferença significativa é que o evento Open pode ser cancelado, mas o evento Load não pode. Por exemplo, se você estiver criando dinamicamente uma fonte de registro para um formulário em um procedimento de evento para o evento Open do formulário, poderá cancelar a abertura do formulário se não houver registros a serem exibidos. Da mesma forma, o evento Unload pode ser cancelado, mas o evento Close não.
O exemplo a seguir mostra como você pode cancelar a abertura de um formulário quando o usuário escolhe um botão Não . Uma caixa de mensagem pede para o usuário inserir detalhes do pedido. Se o usuário escolher Não, o formulário Detalhes do Pedido não será aberto.
Para testar o exemplo, adicione o procedimento de evento a seguir a um formulário.
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
Tem dúvidas ou quer enviar comentários sobre o VBA para Office ou sobre esta documentação? Confira Suporte e comentários sobre o VBA para Office a fim de obter orientação sobre as maneiras pelas quais você pode receber suporte e fornecer comentários.