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]Verificação de campo vazio

    Compartilhe

    davidapcon
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 27
    Registrado : 23/10/2010

    Verificação de campo vazio

    Mensagem  davidapcon em 27/1/2011, 17:08

    Olá pessoal!!!

    Estou precisando de um auxilio em um código. Acontece que eu preciso que meu formulário verifique se tem algum campo vazio e me informe que existem campo(s) vazio(s).
    Eu uso um código que verifica pela TAG, mas o problema é que utilizando o código que tenho atualmente o formulário acaba verificando todos os controles mesmos os que eu não quero no caso os ocultos.

    Queria saber se existe alguma forma de verificar apenas os controles que eu quero e se é possivel aparecer apenas uma mensagem avisando que tem campos vazios no form. O código que uso atualmente é o abaixo:

    Private Sub Form_BeforeUpdate(Cancel As Integer)
    Dim ctl As Control
    For Each ctl In Me.Controls
    If ctl.ControlType = acTextBox Then

    If IsNull(ctl.Value) Or IsEmpty(ctl.Value) Then
    MsgBox "O campo '" & ctl.Tag & "' é obrigatório"
    DoCmd.CancelEvent
    ctl.SetFocus
    End If
    End If
    Next
    End Sub

    Desde já agradeço a ajuda de todos!!!
    Att,
    David
    avatar
    vieirasoft
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7141
    Registrado : 11/05/2010

    Re: [Resolvido]Verificação de campo vazio

    Mensagem  vieirasoft em 27/1/2011, 17:23

    Vá ao repositório de códigos que tem lá exemplos para fazer essa verificação.

    davidapcon
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 27
    Registrado : 23/10/2010

    Re: [Resolvido]Verificação de campo vazio

    Mensagem  davidapcon em 27/1/2011, 18:17

    Ok Viera, vejo hoje a noite pois a segurança da informação aqui da empresa está bloqueando o servidor onde estão hospedados os arquivos do repositório.

    Obrigado!

    avatar
    vieirasoft
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7141
    Registrado : 11/05/2010

    Re: [Resolvido]Verificação de campo vazio

    Mensagem  vieirasoft em 27/1/2011, 18:32

    Aqui tem:

    Preenchimento Obrigatório de Campos TextBox no Formulario

    Todos os campos terão de ter o nome dos mesmos, nas propriedades, Aba Outros, Linha Marca (Tag).

    Public Function ValidaPreenchimento() As Boolean
    'By JPaulo ® Maximo Access
    Dim ctl As Control
    For Each ctl In Me.Controls
    If ctl.ControlType = acTextBox Then
    If IsNull(ctl.Value) Then
    MsgBox "O Campo '" & ctl.Tag & "' não pode ficar em branco"
    ctl.SetFocus
    Exit Function
    End If
    End If
    Next
    End Function

    Private Sub SeuBotão_Click()
    Call ValidaPreenchimento
    End Sub

    davidapcon
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 27
    Registrado : 23/10/2010

    Re: [Resolvido]Verificação de campo vazio

    Mensagem  davidapcon em 28/1/2011, 21:13

    Procurando aqui no forum acabei achando esse código passado pelo JPaulo que faz a verificação somente dos campos que você desejar.

    Public Function valNullControl(frm As Form)
    Dim ctl As Control
    Dim minhaArray As String
    Dim validacaoOk As Byte

    validacaoOk = 0

    For Each ctl In frm.Controls
    If ctl.Tag <> Null Or ctl.Tag <> "" Then
    ctl.BackColor = 16777215
    End If
    Next ctl

    For Each ctl In frm.Controls
    If ctl.Visible = True Then
    If ctl.Tag <> Null Or ctl.Tag <> "" Then
    If IsNull(ctl) = True Or ctl = "" Then
    ctl.BackColor = 161616
    validacaoOk = 1
    minhaArray = minhaArray & ctl.Tag & ", "
    End If
    End If
    End If
    Next ctl
    If validacaoOk = 1 Then MsgBox "Campo Obrigatório: " & minhaArray

    End Function


    No seu código ficará assim:

    Private Sub Adicionar_Click()

    Dim db As Database
    Dim rs As Recordset

    If MsgBox("Gravar registro?", vbYesNoCancel, "Opções") = vbYes Then

    If valNullControl(Me) = False Then
    Exit Sub
    End If

    Set db = CurrentDb()
    Set rs = db.OpenRecordset("tblClientes", dbOpenTable)
    rs.AddNew


    Obrigado!!!
    avatar
    vieirasoft
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7141
    Registrado : 11/05/2010

    Re: [Resolvido]Verificação de campo vazio

    Mensagem  vieirasoft em 28/1/2011, 21:15

    Obrigado pelo retorno o fórum agradece
    avatar
    Caio
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 301
    Registrado : 27/04/2015

    Re: [Resolvido]Verificação de campo vazio

    Mensagem  Caio em 10/9/2015, 13:43

    Davidapcon, e onde eu adiciono os campos que eu quero que ele verifique ai no código?

    diogoisaias21
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 166
    Registrado : 01/09/2017

    Re: [Resolvido]Verificação de campo vazio

    Mensagem  diogoisaias21 em 12/12/2017, 15:28

    gostaria de saber também

    Obrigado
    avatar
    good guy
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1228
    Registrado : 05/02/2010

    Verificação de campo vazio

    Mensagem  good guy em 12/12/2017, 16:05

    Olá diogo,

    Outra sugestão:

    [Você precisa estar registrado e conectado para ver este link.]

    gilsonrusso
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 5
    Registrado : 03/12/2015

    confuso!!!

    Mensagem  gilsonrusso em 12/9/2018, 16:33

    quando insiro o código aparace erro em tempo de execução - diz voçe inseriu um expressão que contem uma ref. invalida a propriedade visible

    criei um modulo e coloquei a funçao publica. e depois dentro do meu form no botao salvar fiz a chamada.

    ??????????

    depurador: If ctl.Visible = True Then

    alguém pode explicar melhor como inserir este código??? desde já agradeço!!!! estou precisando muito para enxugar os códigos inserido no form.

      Data/hora atual: 15/10/2018, 21:22