MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração


Participe do fórum, é rápido e fácil

MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração

MaximoAccess

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

Dicas Ms Access, Exemplos Ms Access, Codigos VBA Ms Access, SQL Ms Access


4 participantes

    Exibir msgBox e não permitir avançar para próximo campo

    avatar
    ARGONZALE
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 246
    Registrado : 21/05/2015

    Exibir msgBox e não permitir avançar para próximo campo Empty Exibir msgBox e não permitir avançar para próximo campo

    Mensagem  ARGONZALE 23/9/2015, 17:25

    Boa tarde senhores, tudo joia?
    Preciso de uma ajudinha:
    Tenho um Campo chamado [Troco] e gostaria que após atualizar, ele se comparasse a outro campo chamado [Conta Troco].

    Se o valor do campo [Troco] for igual ao valor do campo [conta Troco] ele aceite ir para o próximo campo.

    Mas se os valores fossem diferentes ele enviasse uma msgBox (“Valor de troco errado”), vbCritical..... e não permitisse ir para próximo campo enquanto este não se igualasse.

    Coloquei desta forma mas ele permite passar para o próximo campo:

    Private Sub Troco_AfterUpdate()
    If Me.TROCO = Me.Conta_Troco = 0 Then
    MsgBox ("Troco Errado"), vbCritical
    End If
    End Sub

    Espero ter sido claro na explicação!!!
    Fernando Bueno
    Fernando Bueno
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 2115
    Registrado : 13/04/2012

    Exibir msgBox e não permitir avançar para próximo campo Empty Re: Exibir msgBox e não permitir avançar para próximo campo

    Mensagem  Fernando Bueno 23/9/2015, 17:37

    Boa tarde Alexandre;

    Teste dessa forma:

    Código:
    Private Sub Troco_AfterUpdate()
    If Me.TROCO = Me.Conta_Troco = 0 Then
    MsgBox "Troco Errado", vbCritical
    Me.Undo 'Limpa o campo
    Cancel = True 'mantém o foco no campo
    End If
    End Sub


    .................................................................................
    Um abraço
    Fernando Bueno


    O aumento do conhecimento é como uma esfera dilatando-se no espaço
    quanto maior a nossa compreensão,
    maior o nosso contacto com o desconhecido
    Exibir msgBox e não permitir avançar para próximo campo 16rzeq
    avatar
    ARGONZALE
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 246
    Registrado : 21/05/2015

    Exibir msgBox e não permitir avançar para próximo campo Empty Re: Exibir msgBox e não permitir avançar para próximo campo

    Mensagem  ARGONZALE 23/9/2015, 17:49

    Opa Fernando,

    Obrigado pela resposta mas ainda continua passando para o próximo campo.

    Ainda não funfou...
    Fernando Bueno
    Fernando Bueno
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 2115
    Registrado : 13/04/2012

    Exibir msgBox e não permitir avançar para próximo campo Empty Re: Exibir msgBox e não permitir avançar para próximo campo

    Mensagem  Fernando Bueno 23/9/2015, 17:58

    Poderia postar partes do seu banco para vermos?


    .................................................................................
    Um abraço
    Fernando Bueno


    O aumento do conhecimento é como uma esfera dilatando-se no espaço
    quanto maior a nossa compreensão,
    maior o nosso contacto com o desconhecido
    Exibir msgBox e não permitir avançar para próximo campo 16rzeq
    avatar
    ARGONZALE
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 246
    Registrado : 21/05/2015

    Exibir msgBox e não permitir avançar para próximo campo Empty Re: Exibir msgBox e não permitir avançar para próximo campo

    Mensagem  ARGONZALE 23/9/2015, 18:11

    Fernando,

    Segue imagem do BD onde o problema ocorre. Não fui autorizado postar o BD.

    Veja que após o valor inserido no campo Troco ele valida se é igual ao campo Conta Troco (logo abaixo).

    Pelo seu código a msgBox aparece mas ainda permite ir para o próximo campo Dinheiro.

    Veja o que consegue por mim.

    Obrigado!!!
    Silvio
    Silvio
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 5120
    Registrado : 20/04/2011

    Exibir msgBox e não permitir avançar para próximo campo Empty Re: Exibir msgBox e não permitir avançar para próximo campo

    Mensagem  Silvio 23/9/2015, 18:12

    Com a permissão dos senhores, um pitaco !

    Aproveitando o código do Fernando:

    Private Sub Troco_AfterUpdate()
    If Me.TROCO = Me.Conta_Troco = 0 Then
    MsgBox "Troco Errado", vbCritical
    Me.Undo 'Limpa o campo
    me.troco.setfocus ' acrescentei esse comando.
    End If
    End Sub


    .................................................................................
    Caso tenha resolvido a tua duvida, coloque o tópico como resolvido.
    www.maximoaccess.com/t860-resolucao-de-topicos

    "Quase tudo é possível quando se tem determinação e força de vontade. Não desista tão rápido."
    Fernando Bueno
    Fernando Bueno
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 2115
    Registrado : 13/04/2012

    Exibir msgBox e não permitir avançar para próximo campo Empty Re: Exibir msgBox e não permitir avançar para próximo campo

    Mensagem  Fernando Bueno 23/9/2015, 18:13

    Não anexou a imagem mais tente assim.

    Código:
    Private Sub Troco_AfterUpdate()
    If Me.TROCO = Me.Conta_Troco = 0 Then
    MsgBox "Troco Errado", vbCritical
    Me.Undo 'Limpa o campo
    Me.TROCO.SetFocus
    End If
    End Sub


    .................................................................................
    Um abraço
    Fernando Bueno


    O aumento do conhecimento é como uma esfera dilatando-se no espaço
    quanto maior a nossa compreensão,
    maior o nosso contacto com o desconhecido
    Exibir msgBox e não permitir avançar para próximo campo 16rzeq
    Fernando Bueno
    Fernando Bueno
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 2115
    Registrado : 13/04/2012

    Exibir msgBox e não permitir avançar para próximo campo Empty Re: Exibir msgBox e não permitir avançar para próximo campo

    Mensagem  Fernando Bueno 23/9/2015, 18:14

    Grande Silvio;

    Postamos juntos Very Happy


    .................................................................................
    Um abraço
    Fernando Bueno


    O aumento do conhecimento é como uma esfera dilatando-se no espaço
    quanto maior a nossa compreensão,
    maior o nosso contacto com o desconhecido
    Exibir msgBox e não permitir avançar para próximo campo 16rzeq
    avatar
    ARGONZALE
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 246
    Registrado : 21/05/2015

    Exibir msgBox e não permitir avançar para próximo campo Empty Re: Exibir msgBox e não permitir avançar para próximo campo

    Mensagem  ARGONZALE 23/9/2015, 18:20

    Poxa vida,

    Obrigado pela ajuda mas continua indo para o próximo campo após msgbox.
    Silvio
    Silvio
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 5120
    Registrado : 20/04/2011

    Exibir msgBox e não permitir avançar para próximo campo Empty Re: Exibir msgBox e não permitir avançar para próximo campo

    Mensagem  Silvio 23/9/2015, 18:28

    Grande Fernando...estamos ai !!!

    Bom, vamos mexer um pouco no código....

    Private Sub Troco_AfterUpdate()
    If Me.TROCO = Me.Conta_Troco = 0 Then
    Me.Undo 'Limpa o campo
    Me.TROCO.SetFocus
    MsgBox "Troco Errado", vbCritical
    End If
    End Sub


    Mas, isso estamos fazendo com a nossa bola de Cristal de Microsoft...pois não estamos com a base de dados em mãos !
    Pode haver outros fatores que estejam influenciando a ida do foco para outro campo.


    .................................................................................
    Caso tenha resolvido a tua duvida, coloque o tópico como resolvido.
    www.maximoaccess.com/t860-resolucao-de-topicos

    "Quase tudo é possível quando se tem determinação e força de vontade. Não desista tão rápido."
    avatar
    ARGONZALE
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 246
    Registrado : 21/05/2015

    Exibir msgBox e não permitir avançar para próximo campo Empty Re: Exibir msgBox e não permitir avançar para próximo campo

    Mensagem  ARGONZALE 23/9/2015, 18:32

    Estou tentando anexar uma imagem print mas não carrega aqui no fórum
    Assis
    Assis
    Maximo VIP
    Maximo VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 4772
    Registrado : 06/11/2009

    Exibir msgBox e não permitir avançar para próximo campo Empty Re: Exibir msgBox e não permitir avançar para próximo campo

    Mensagem  Assis 23/9/2015, 18:37

    Boa tarde

    Teste

    Ponha o código no campo a seguir ao Troco, no acontecimento ao receber o foco


    If Me.TROCO = Me.Conta_Troco = 0 Then
    MsgBox "Troco Errado", vbCritical
    Cancel = True 'cancela o evento.
    Me.TROCO.SetFocus
    Me.TROCO = ""
    End If


    .................................................................................
    *** Só sei que nada sei ***
    avatar
    ARGONZALE
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 246
    Registrado : 21/05/2015

    Exibir msgBox e não permitir avançar para próximo campo Empty Re: Exibir msgBox e não permitir avançar para próximo campo

    Mensagem  ARGONZALE 23/9/2015, 18:48

    Assis,

    Funfou... (deu certo) mas se deixar o campo vazio ele aceita ir ao próximo campo mesmo na propriedade do campo [Troco] estando como "É Negado Nulo"

    Assis
    Assis
    Maximo VIP
    Maximo VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 4772
    Registrado : 06/11/2009

    Exibir msgBox e não permitir avançar para próximo campo Empty Re: Exibir msgBox e não permitir avançar para próximo campo

    Mensagem  Assis 23/9/2015, 18:59


    Teste assim


    If IsNull(Me!troco) Or Me.TROCO = Me.Conta_Troco = 0 Then
    MsgBox "Troco Errado", vbCritical
    Cancel = True 'cancela o evento.
    Me.TROCO.SetFocus
    Me.TROCO = ""
    End If








    .................................................................................
    *** Só sei que nada sei ***
    avatar
    ARGONZALE
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 246
    Registrado : 21/05/2015

    Exibir msgBox e não permitir avançar para próximo campo Empty Re: Exibir msgBox e não permitir avançar para próximo campo

    Mensagem  ARGONZALE 23/9/2015, 19:11

    Assis,

    Agora sim o evento correspondeu à necessidade...

    Muito obrigado Assis, Silvio e Fernando Bueno pela ajuda e tempo destinado a solução do meu problema!!!
    Assis
    Assis
    Maximo VIP
    Maximo VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 4772
    Registrado : 06/11/2009

    Exibir msgBox e não permitir avançar para próximo campo Empty Re: Exibir msgBox e não permitir avançar para próximo campo

    Mensagem  Assis 23/9/2015, 19:13

    Obrigado pelo retorno Alexandre

    Faltou o resolvido


    .................................................................................
    *** Só sei que nada sei ***

    Conteúdo patrocinado


    Exibir msgBox e não permitir avançar para próximo campo Empty Re: Exibir msgBox e não permitir avançar para próximo campo

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 22/11/2024, 07:01