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


3 participantes

    [Resolvido]Ativar desativar código

    avatar
    Eloi
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 60
    Registrado : 09/05/2010

    [Resolvido]Ativar desativar código Empty Ativar desativar código

    Mensagem  Eloi 10/6/2011, 22:29

    Boa noite pessoal,

    Gostaria saber de um código que funcionasse assim: Tenho um formulário registro de imóveis, nele contém várias caixas de texto e uma caixa de combinação com as opções de Ocupado e desocupado, uso a função abaixo para obrigar os preenchimentos de todos so campos, esta funcionando normalmente, agora queria que guando eu selecionasse na caixa de combinação a opção desocupado a função abaixo ficaria desativada.

    Private Function TestaCampos() As Boolean

    Dim i As Integer
    Dim strMsg As String
    Dim strTitle As String

    TestaCampos = True
    'inicia o loop pelos controle do formulário
    'a contagem começa em zero (0) até x-1
    For i = 0 To Me.Count - 1
    'se o controle tem a marca(tag) = t então
    If Me(i).Tag = "t" Then
    'se o campo está vazio então
    If IsNull(Me(i)) Or Me(i) = "" Then
    'emite mensagem acompanhado do nome do controle
    strMsg = "É obrigatório o preenchimento do campo " & Me(i).Name & "!"
    strTitle = "Registro Inconsistente"
    MsgBox strMsg, 48, strTitle
    'move o foco para o controle
    Me(i).SetFocus

    TestaCampos = False
    Exit Function
    End If
    End If
    Next i
    End Function
    avatar
    Convidado
    Convidado


    [Resolvido]Ativar desativar código Empty Re: [Resolvido]Ativar desativar código

    Mensagem  Convidado 10/6/2011, 23:55

    Amigão.. isto é um finção privada.. para chamá-la ele deve esta em algum outro código.. da seguinte maneira

    Call TestaCampo ou simplesmente testa campo...
    Ela nao funciona somente como esta ai..
    tem que ver qual código chama esta função...

    Procure o código e poste aqui para vermos..

    Saudações
    avatar
    Eloi
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 60
    Registrado : 09/05/2010

    [Resolvido]Ativar desativar código Empty Ativar desativar código

    Mensagem  Eloi 11/6/2011, 15:30

    Harysohn, bom dia.
    Obrigado pela ajuda,Veja o código de chamado para a função.
    Private Sub Comando53_GotFocus()
    If Not TestaCampos Then Exit Sub
    End Sub
    Abraços
    Eloi
    avatar
    Convidado
    Convidado


    [Resolvido]Ativar desativar código Empty Re: [Resolvido]Ativar desativar código

    Mensagem  Convidado 11/6/2011, 16:20

    Eloi eu não entendi bem o if Not...
    Mas para pular este código seria algo assim:


    Private Sub Comando53_GotFocus()

    If Me.CaixadeCombinação.Value = “Desocupado”Then

    Exit Sub

    Else
    If Not TestaCampos Then Exit Sub
    End if


    End Sub


    Pode testar assim tambem:


    Private Sub Comando53_GotFocus()

    If Me.CaixadeCombinação.Value = “Desocupado”Then

    Exit Sub

    Else
    TestaCampos
    End if


    End Sub
    avatar
    Convidado
    Convidado


    [Resolvido]Ativar desativar código Empty Re: [Resolvido]Ativar desativar código

    Mensagem  Convidado 11/6/2011, 16:22

    Lembrando que se a caixa de combinação for esta: Comando53

    Esse evento so valeria no AfterUpadate da mesma, pois o valor desocupado ja estaria atualizado na Caixa de COmbinação
    avatar
    Eloi
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 60
    Registrado : 09/05/2010

    [Resolvido]Ativar desativar código Empty Ativar desativar código

    Mensagem  Eloi 13/6/2011, 04:02

    Harysohn, boa noite.
    Testei o seu código más não funcionou como o esperado, quando eu seleciono na caixa de opção "desocupado" a função ainda fica ativa. inserir o códifo na caixa em AfterUpadate.
    Atenciosamente.
    Eloi
    avatar
    Convidado
    Convidado


    [Resolvido]Ativar desativar código Empty Re: [Resolvido]Ativar desativar código

    Mensagem  Convidado 13/6/2011, 04:05

    Amigão.. La acima voce falou em caixa de combinação..
    Agora ja apreceu outro SER ai... Caixa de opção.. Afinal o que é o que???

    Se for caixa de opção é totalmente diferente de caixa de combinação

    Saudações
    avatar
    Convidado
    Convidado


    [Resolvido]Ativar desativar código Empty Re: [Resolvido]Ativar desativar código

    Mensagem  Convidado 13/6/2011, 04:07

    se for caixa de opção.. pode testar assim:

    Private Sub Comando53_GotFocus()

    If IsNull (CaixaOpção) Then


    Exit Sub

    Else
    TestaCampos

    End if

    End Sub
    avatar
    Eloi
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 60
    Registrado : 09/05/2010

    [Resolvido]Ativar desativar código Empty Ativar desativar código

    Mensagem  Eloi 13/6/2011, 04:54

    Amigo,peço desculpa por não ser muito claro.
    Olhe é caixa de combinação com as opções de "Desocupado ou Ocupado".
    Att.
    Eloi
    avatar
    Convidado
    Convidado


    [Resolvido]Ativar desativar código Empty Re: [Resolvido]Ativar desativar código

    Mensagem  Convidado 13/6/2011, 05:12

    Bem.. se puder post seu BD Aqui que tanto eu como outros companheiros poderao auxiliar melhor...
    Ai so vendo como isso é usado..efetivamente
    Caso nao consiga postar:
    Harysohn@hotmail.com
    avatar
    Convidado
    Convidado


    [Resolvido]Ativar desativar código Empty Re: [Resolvido]Ativar desativar código

    Mensagem  Convidado 13/6/2011, 05:15

    Mas pelo que vi.. esse codigo corre todos os controles do form....
    o que tiver null.. ele emite aviso...
    avatar
    Convidado
    Convidado


    [Resolvido]Ativar desativar código Empty Re: [Resolvido]Ativar desativar código

    Mensagem  Convidado 13/6/2011, 05:19

    Vais colocar asim na propria função

    Private Function TestaCampos() As Boolean

    Dim i As Integer
    Dim strMsg As String
    Dim strTitle As String

    If me.SuaCaixadeCombinação.Value "Desocupado" Then
    Exit Sub
    Else
    TestaCampos = True
    'inicia o loop pelos controle do formulário
    'a contagem começa em zero (0) até x-1
    For i = 0 To Me.Count - 1
    'se o controle tem a marca(tag) = t então
    If Me(i).Tag = "t" Then
    'se o campo está vazio então
    If IsNull(Me(i)) Or Me(i) = "" Then
    'emite mensagem acompanhado do nome do controle
    strMsg = "É obrigatório o preenchimento do campo " & Me(i).Name & "!"
    strTitle = "Registro Inconsistente"
    MsgBox strMsg, 48, strTitle
    'move o foco para o controle
    Me(i).SetFocus
    TestaCampos = False
    Exit Function
    End If
    End If
    Next i
    End IF

    End Function
    JPaulo
    JPaulo
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 11016
    Registrado : 04/11/2009

    [Resolvido]Ativar desativar código Empty Re: [Resolvido]Ativar desativar código

    Mensagem  JPaulo 13/6/2011, 15:01

    .
    Eloi amigão veja o simples, e não altere a função que tem direitos de autor e está a funcionar na perfeição.

    Transforme apenas essa função Privada em Publica

    Public Function TestaCampos() As Boolean

    No evento VBA depois de atualizar na sua Caixa de Combinação, faça assim;

    Private Sub SuaCombobox_AfterUpdate()
    If Me.SuaCombobox.Value = "desocupado" Then
    'se a caixa de combinação devolver o "desocupado", morrer aqui
    Exit Sub
    Else
    'se for "ocupado" faz correr a função
    Call TestaCampos
    End If
    End Sub





    .................................................................................
    Contribua com o maximoaccess nos links abaixo, ajude a melhorar este que é o seu site na NET.

    Pay-Pal R$ Aqui
    Pay-Pal € Aqui

    Ou ainda: Aqui (Novo)

    Sucesso e Bons Estudos
    Success and Good Studies

    [Resolvido]Ativar desativar código Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Ativar desativar código Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Ativar desativar código Folder_announce_new Instruções SQL como utilizar...
    avatar
    Convidado
    Convidado


    [Resolvido]Ativar desativar código Empty Re: [Resolvido]Ativar desativar código

    Mensagem  Convidado 13/6/2011, 16:19

    Perfect!
    vieirasoft
    vieirasoft
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

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

    [Resolvido]Ativar desativar código Empty Re: [Resolvido]Ativar desativar código

    Mensagem  vieirasoft 19/6/2011, 11:32

    Amigo Eloi

    Resolveu o problema?
    avatar
    Eloi
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 60
    Registrado : 09/05/2010

    [Resolvido]Ativar desativar código Empty Ativar desativar código

    Mensagem  Eloi 20/6/2011, 17:11

    Amigos boa tarde,
    Não tive tempo de testar as sugestões de vocês, retornarei em breve.
    Muito grato pela atenção
    Eloi
    vieirasoft
    vieirasoft
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

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

    [Resolvido]Ativar desativar código Empty Re: [Resolvido]Ativar desativar código

    Mensagem  vieirasoft 20/6/2011, 17:13

    Ficamos então como tópico em aberto por mais algum tempo.
    avatar
    Eloi
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 60
    Registrado : 09/05/2010

    [Resolvido]Ativar desativar código Empty Ativar desativar código

    Mensagem  Eloi 27/6/2011, 03:00

    Boa noite a todos.

    JPaulo funciona como eu esperava, fico muito agradecido pela ajuda.

    abraços

    Eloi

    Conteúdo patrocinado


    [Resolvido]Ativar desativar código Empty Re: [Resolvido]Ativar desativar código

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 28/4/2024, 07:21