Ir para conteúdo
Fórum Script Brasil
  • 0

Como Cancelar a inclusão no meio do form


Flecha

Pergunta

Olá,

Tenho o formulário principal com todos os dados do BD, tem um botão de comando INCLUIR que quan do clicado abre a inclusão no form e seta o focu para o primeiro TextBox.

Existe nesse form 12 TextBox e estão com a função no evento ao sair:

Private Sub DTNATO_Exit(Cancel As Integer)

If IsNull(Me!DTNATO) Or Me!DTNATO = "" Then

MsgBox "Você precisa preencher este campo!"

Cancel = True 'Cancela o evento.

End If

End Sub

Acontece que quando quero desistir de incluir não consigo sair do Formulário.

Como faço para fechar o form no meio da inclusão a cada vez que ele pedir o preenchimento obrigatório?

Flecha

Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0

Bom dia amigo Flecha,

Tente assim:

DoCmd.SetWarnings False
DoCmd.RunCommand acCmdClose
ou assim:
DoCmd.SetWarnings False
DoCmd.RunCommand acCmdDeleteRecord
DoCmd.RunCommand acCmdClose
ou assim:
DoCmd.SetWarnings False
DoCmd.RunCommand acCmdDelete
DoCmd.RunCommand acCmdClose

Não testei, mas acredito que força a saída da inclusão.

Link para o comentário
Compartilhar em outros sites

  • 0

Leandro,

Não deu certo, ele retorna que essas funções não podem ser usadas em eventos de Formulário ou relatórios.

Eu andei mexendo e coloquei assim:

Private Sub CPF_Exit(Cancel As Integer)

If IsNull(Me!CPF) Or Me!CPF = "" Then

'MsgBox "Você precisa preencher este campo!"

retorno = MsgBox("Você precisa preencher este campo!", vbOKCancel, "Todos os Campos são Obrigatórios")

'Cancel = True 'Cancela o evento.

If retorno = 1 Then

Cancel = True

Else

SendKeys "{ESC}"

SendKeys "{UP}"

End If

Exit Sub

End If

End Sub

Tá quase, se clicar em cancelar ele abandona o campo criticado mas esta indo para o proximo campo.

Tinha que fazê-lo voltar para o primeiro campo do form.

Engraçado que no primeiro campo que é o nome tem essa função

Private Sub NOME_Exit(Cancel As Integer)

Dim retorno As Integer

If IsNull(Me!NOME) Or Me!NOME = "" Then

retorno = MsgBox("Você precisa preencher este campo!", vbOKCancel, "Todos os Campos são Obrigatórios")

'Cancel = True 'Cancela o evento.

If retorno = 1 Then

Cancel = True

Else

DoCmd.GoToRecord , , acFirst

End If

Exit Sub

End If

End Sub

E funciona certinho ,se clicar em cancelar ele vai para o primeir registro e fica como se tivesse abortado a inclusão.

E ai ?

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,5k
×
×
  • Criar Novo...