MaximoAccess

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

Obrigado

Administração do MaximoAccess

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

    [Resolvido]Código para validar valores em um campo de formulario

    Compartilhe

    eduarte
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 32
    Registrado : 27/09/2013

    [Resolvido]Código para validar valores em um campo de formulario

    Mensagem  eduarte em Sab 30 Jan 2016, 16:14

    Bom dia, amigos

    Tenho um BD no qual no campo [Disciplina] devo inserir apenas 0 ou 1. Fiz uma regra de validação direto na tabela e quando tento entrar com outro valor diferente de 0 ou 1 a mensagem é exibida, "Digite apenas 0 ou 1 para este campo". Porém quando abro o formulário através de um MenuControle que criei para facilitar a navegação entre os objetos do banco, simplesmente a caixa com o texto de validação não aparece. Gostaria de criar um código para colocar na propriedade do campo [Disciplina] no evento/Ao Sair para validar esses valores.

    Grato, desde já.
    avatar
    formiga10x
    Super Avançado
    Super Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 748
    Registrado : 11/09/2013

    Re: [Resolvido]Código para validar valores em um campo de formulario

    Mensagem  formiga10x em Sab 30 Jan 2016, 16:52

    Coloque:
    if me.minhaTextbox <> 0 or me.minhaTextbox <> 1 then
    msgbox("Digite apenas 0 ou 1 para este campo"), vbCritical, "***Título***"
    me.minhaTextox =""
    exit sub
    end if


    .................................................................................
    Abraço
    Formiga10x

    Sempre que possível poste o bd ou parte dele, com uma explicação bem clara e objetiva do que quer.
    “Um homem não está acabado quando enfrenta a derrota. Ele está acabado quando desiste - Richard Nixon”
    Formiga10x

    "Lembro do exato momento em que me dei conta que boa parte de minha vida foi dedicada a localizar erros em meus próprios programas."
    - Maurice Vicent Wilkes

    eduarte
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 32
    Registrado : 27/09/2013

    Código para validar valores em um campo de formulario

    Mensagem  eduarte em Seg 01 Fev 2016, 18:43

    Amigo, obrigado pela resposta, porém como sou leigo em VB não entendi a parte "***Título***" e me.minhaTextox ="".
    Baseado em um código que já utilizo para não deixar o campo data em branco, tentei adaptá-lo para esta situação nova para aceitar apenas 0 ou 1 no campo [Indisciplina], só que quando entro com o nº 1 ou com o nº 0 a mensagem continua aparecendo, ou seja não funcionou.
    Exemplo:
    If (Me.ActiveControl) <> 0 Or (Me.ActiveControl) <> 1 Then
    DoCmd.CancelEvent
    MsgBox "Digite apenas 0 ou 1 para este campo...", vbCritical
    End If
    End Sub

    Quero testar o seu exemplo, porém preciso saber o que devo digitar dentro das haspas e o Título se refere ao título de que?
    Obg.
    avatar
    formiga10x
    Super Avançado
    Super Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 748
    Registrado : 11/09/2013

    Re: [Resolvido]Código para validar valores em um campo de formulario

    Mensagem  formiga10x em Ter 02 Fev 2016, 03:02

    Olá.
    ***Titulo*** é anda mais que o título da msgbox.
    minhaTextbox é o nome da sua caixa de texto.

    Código:
    Private Sub minhaTextbox_GotFocus()
    If Me.minhaTextbox = 0 Or Me.minhaTextbox = 1 Then

    MsgBox ("Número Aceito!"), vbInformation, "***Título***"

    Else

    MsgBox ("Digite apenas 0 ou 1 para este campo"), vbCritical, "***Título***"
    Me.minhaTextbox = ""
    Exit Sub
    End If

    End Sub
    Anexos
    exemplo.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (22 Kb) Baixado 8 vez(es)


    .................................................................................
    Abraço
    Formiga10x

    Sempre que possível poste o bd ou parte dele, com uma explicação bem clara e objetiva do que quer.
    “Um homem não está acabado quando enfrenta a derrota. Ele está acabado quando desiste - Richard Nixon”
    Formiga10x

    "Lembro do exato momento em que me dei conta que boa parte de minha vida foi dedicada a localizar erros em meus próprios programas."
    - Maurice Vicent Wilkes

    eduarte
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 32
    Registrado : 27/09/2013

    Código para validar valores em um campo de formulario

    Mensagem  eduarte em Qua 03 Fev 2016, 19:52

    Olá, gente
    formiga10x,

    Fiz umas alterações no código e ficou assim:

    Private Sub Indisciplina_Exit(Cancel As Integer)
    If Indisciplina = 0 Or Indisciplina = 1 Then
    MsgBox ("Número Aceito!"), vbInformation, "ATENÇÃO!"
    Else
    DoCmd.CancelEvent
    MsgBox ("Digite apenas 0 ou 1 para este campo"), vbCritical, "ATENÇÃO!"
    End If
    End Sub

    Agora está funcionando, porém gostaria de fazer uma pequena alteração:
    Em vez de mostrar a mensagem MsgBox ("Número Aceito!"), vbInformation, "ATENÇÃO!" toda vez que digitar o número certo gostaria de ir direto para a próxima Textbox que é [Nao_Tarefas].

    Tentei fazer o código abaixo, substituindo a msg de 'Numero Aceito' por GoTo Nao_Tarefas (Nao_Tarefas é a textbox seguinte), porém deu erro de compilação, Rótulo não definido.

    Private Sub Indisciplina_Exit(Cancel As Integer)
    If Indisciplina = 0 Or Indisciplina = 1 Then
    GoTo Nao_Tarefas
    Else
    DoCmd.CancelEvent
    MsgBox ("Digite apenas 0 ou 1 para este campo"), vbCritical, "ATENÇÃO!"
    End If
    End Sub

    Poderia me dizer onde estou errando?
    Valeu!
    avatar
    formiga10x
    Super Avançado
    Super Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 748
    Registrado : 11/09/2013

    Re: [Resolvido]Código para validar valores em um campo de formulario

    Mensagem  formiga10x em Qua 03 Fev 2016, 23:38

    Altere para "Ao Alterar" a propriedade do evento e:

    Código:
    Private Sub minhaTextbox_Change()
    If Indisciplina.Text = 0 Or Indisciplina.Text = 1 Then
    Nao_Tarefas.SetFocus
    Else
    MsgBox ("Digite apenas 0 ou 1 para este campo"), vbCritical, "ATENÇÃO!"
    End If
    End Sub


    .................................................................................
    Abraço
    Formiga10x

    Sempre que possível poste o bd ou parte dele, com uma explicação bem clara e objetiva do que quer.
    “Um homem não está acabado quando enfrenta a derrota. Ele está acabado quando desiste - Richard Nixon”
    Formiga10x

    "Lembro do exato momento em que me dei conta que boa parte de minha vida foi dedicada a localizar erros em meus próprios programas."
    - Maurice Vicent Wilkes

    eduarte
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 32
    Registrado : 27/09/2013

    Código para validar valores em um campo de formulario

    Mensagem  eduarte em Qui 04 Fev 2016, 14:41

    Ok.
    Deu certo.
    Muito obrigado.

    Um abraço.

      Data/hora atual: Ter 24 Out 2017, 06:56