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


    [Resolvido]Mensagem condicional em formulário

    João Ricardo
    João Ricardo
    Super Avançado
    Super Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 534
    Registrado : 20/01/2013

    [Resolvido]Mensagem condicional em formulário Empty [Resolvido]Mensagem condicional em formulário

    Mensagem  João Ricardo 17/1/2014, 15:40

    Olá amigos, bom dia!

    Estou organizando um bd antigo e quero implementar umas funções para eliminar erros que aconteceram até agora.
    Preciso de uma função que possa emitir uma mensagem ao carregar o nome de um aluno em um campo do formulário.
    São duas condições para a mensagem: Uma qdo o aluno é transferido e outra qdo ele é semi-interno.
    A caixa de texto contendo as mensagens deve desabilitar o formulário por trás dela e permitir alterações somente qdo escolhido um aluno válido.

    Eu creio que não seja algo muito difícil, ma ainda não consigo fazer isso no VBA.
    Segue o bd para observação.
    A mesma função será usada noutros formulários e principalmente para que eu possa aprender como fazer.

    Obrigado a todos.
    Anexos
    [Resolvido]Mensagem condicional em formulário AttachmentMensagem condicionada.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (1.3 Mb) Baixado 30 vez(es)


    Última edição por João Ricardo em 17/1/2014, 15:42, editado 1 vez(es) (Motivo da edição : Ortografia)
    avatar
    Convidado
    Convidado


    [Resolvido]Mensagem condicional em formulário Empty Re: [Resolvido]Mensagem condicional em formulário

    Mensagem  Convidado 17/1/2014, 18:18

    Boa Tarde João, de maiores detalhes distro e cite os objetos envolvidos na tua dúvida.

    Cumprimentos
    João Ricardo
    João Ricardo
    Super Avançado
    Super Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 534
    Registrado : 20/01/2013

    [Resolvido]Mensagem condicional em formulário Empty Re: [Resolvido]Mensagem condicional em formulário

    Mensagem  João Ricardo 18/1/2014, 01:16

    Olá amigo, seguem novas informações.

    Este banco de dados trabalha com o registro de alunos que moram na escola (internos) e os que moram com suas famílias (semi-internos). Somente os internos recebem visitas de seus pais, já que os outros (internos) já moram com eles.

    Há também o caso dos transferidos que, consequentemente não estão mais na escola, mas pode ser que apareça alguém querendo visitá-los com outras intenções. Nesse caso, por questões de segurança, gostaria que o vigia fosse informado da situação para não correr o risco de permitir a entrada de alguém que não poderia.

    No formulário de registro da entrada dos alunos tem o campo e, abaixo da listbox de pesquisa aparece o nome do referido aluno pesquisado.

    Preciso de uma função que possa emitir um aviso ao usuário qdo for localizado um aluno transferido ou semi-interno, solicitando a escolha de um novo aluno. Esta função deve desabilitar o formulário, não permitindo que ele possa ser usado em segundo plano.

    Depois vou usar esta mesma função para outras situações, como quando o vigia é desligado da empresa.

    A intenção é que esta função seja pública para ser usada noutras parte do projeto, de forma simples.

    A função poderia ser atribuída pela “propriedade” “após atualizar” da guia “evento” ?
    avatar
    Convidado
    Convidado


    [Resolvido]Mensagem condicional em formulário Empty Re: [Resolvido]Mensagem condicional em formulário

    Mensagem  Convidado 18/1/2014, 01:33

    Compreendi tua necessidade...

    Apenas cite agora o passo a passo para que eu possa reproduzir aqui..
    Assim: Abre o form X, faz isso e aquilo e tal..

    Cumprimentos.
    João Ricardo
    João Ricardo
    Super Avançado
    Super Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 534
    Registrado : 20/01/2013

    [Resolvido]Mensagem condicional em formulário Empty Re: [Resolvido]Mensagem condicional em formulário

    Mensagem  João Ricardo 18/1/2014, 03:40

    Olá.

    Ao abrir o formulário frmVisitaAluno o usuário deverá localizar um aluno pelo nome ou pelo RGM.
    Após localizar o aluno, serão preenchidos os campos RGM, Nome, Série / Ano, Transferido e InternoSeminterno. Estes dois últimos estarão ocultos porque não é necessário que fiquem visíveis.

    Qdo estes campos forem preenchidos a função é dispara e deverá verificar se o aluno é Transferido ou Semi-interno. Se SIM, então apresenta a MsgBox com a indicação que não é um aluno válido e solicita a escolha de outro. Nesse caso, se possível, o cursor retornaria para o campo Localizar aluno por nome e deixaria em branco os campos citados acima.
    avatar
    Convidado
    Convidado


    [Resolvido]Mensagem condicional em formulário Empty Re: [Resolvido]Mensagem condicional em formulário

    Mensagem  Convidado 18/1/2014, 11:15

    Eis:


    Private Sub combLocalizaPorRGM_AfterUpdate()
    Dim lngAluno As String
    '---------------------------------
    'Verifico se o aluno é transferido
    '---------------------------------
    If DLookup("Transferido", "tblAlunos", "RGM = " & Me.combLocalizaPorRGM.Column(0) & "") = True Then
        '---------------------------------------
        'Carrego na variável a situação do aluno
        '---------------------------------------
        lngAluno = DLookup("InternoSeminterno", "tblAlunos", "RGM = " & Me.combLocalizaPorRGM.Column(0) & "")
            '------------------------------------------
            'Case para direcionar à situação encontrada
            'No case que deseja aplique a instrução
            'que lhe convier
            '------------------------------------------
            Select Case lngAluno
                Case "Interno"
                    MsgBox "Interno"
                Case "Semi-Interno"
                    MsgBox "Semi-Interno"
            End Select
    End If
      '-------------------------------------------------
      ' Localizar o registo que corresponde ao controle.
      '-------------------------------------------------
        Dim Rs As Object
        Set Rs = Me.Recordset.Clone

        Rs.FindFirst "[RGM] = " & Str(Nz(Me.combLocalizaPorRGM.Column(0), 0))
        If Not Rs.EOF Then Me.Bookmark = Rs.Bookmark
    End Sub


    Aplique no evento após atualizar da caixa de combinação substituindo a macro existente.
    No case pode executar a instrução que desejar.

    Cumprimentos.
    João Ricardo
    João Ricardo
    Super Avançado
    Super Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 534
    Registrado : 20/01/2013

    [Resolvido]Mensagem condicional em formulário Empty Re: [Resolvido]Mensagem condicional em formulário

    Mensagem  João Ricardo 18/1/2014, 12:25

    Muito obrigado.

    A função está rodando de acordo, mas tem uma observação.

    Após informar a condição do aluno e fechar a MsgBox, o sistema permite que se faça o registro para o aluno, mesmo ele sendo transferido ou semi-interno.

    É possível criar um condição em que o sistema não permita a continuidade do registro para um aluno que não satisfaça as condições?

    Para esse caso, penso que o subformulário poderia ficar oculto até que fosse localizado um aluno válido, ou seja, ao carregar o formulário o sub não estaria visível, tornando-se visível apenas depois que o aluno localizado fosse válido.

    avatar
    Convidado
    Convidado


    [Resolvido]Mensagem condicional em formulário Empty Re: [Resolvido]Mensagem condicional em formulário

    Mensagem  Convidado 19/1/2014, 00:36

    Tente assim:


    Private Sub combLocalizaPorRGM_AfterUpdate()
    Dim lngAluno As String
    '---------------------------------
    'Verifico se o aluno é transferido
    '---------------------------------
    If DLookup("Transferido", "tblAlunos", "RGM = " & Me.combLocalizaPorRGM.Column(0) & "") = True Then
        '---------------------------------------
        'Carrego na variável a situação do aluno
        '---------------------------------------
        lngAluno = DLookup("InternoSeminterno", "tblAlunos", "RGM = " & Me.combLocalizaPorRGM.Column(0) & "")
            '------------------------------------------
            'Case para direcionar à situação encontrada
            'No case que deseja aplique a instrução
            'que lhe convier
            '------------------------------------------
            Select Case lngAluno
                Case "Interno"
                    MsgBox "Interno"
    Me.undo
                Case "Semi-Interno"
                    MsgBox "Semi-Interno"
    Me.Undo
            End Select
    End If
      '-------------------------------------------------
      ' Localizar o registo que corresponde ao controle.
      '-------------------------------------------------
        Dim Rs As Object
        Set Rs = Me.Recordset.Clone

        Rs.FindFirst "[RGM] = " & Str(Nz(Me.combLocalizaPorRGM.Column(0), 0))
        If Not Rs.EOF Then Me.Bookmark = Rs.Bookmark
    End Sub


    Cumprimentos.
    João Ricardo
    João Ricardo
    Super Avançado
    Super Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 534
    Registrado : 20/01/2013

    [Resolvido]Mensagem condicional em formulário Empty Re: [Resolvido]Mensagem condicional em formulário

    Mensagem  João Ricardo 19/1/2014, 00:52

    Obrigado amigo.
    Vou estudar o assunto e adaptar a outros forms.

    Harysohn, dá uma olhada no assunto abaixo. O que vc acha? Isso fere as regra do fórum? É possível de acontecer?

    Esta semana pensei sobre um curso via Fórum a ser ministrado por um grupo específico de participantes (os mais capacitados obviamente)
    Os participantes (alunos) seriam organizados por grupos de acordo com os conhecimentos prévios, pagariam uma quantia mensal (inclusive seria justo uma parte para o fórum) e o curso seria ministrado de acordo com a experiência em aulas do professor, ou com base em cursos já prontos.

    Felicidades.
    avatar
    Convidado
    Convidado


    [Resolvido]Mensagem condicional em formulário Empty Re: [Resolvido]Mensagem condicional em formulário

    Mensagem  Convidado 20/1/2014, 01:23

    É uma ídeia no entanto não sei se é condizente com o objetivo do Fórum.
    Eu particularmente quando me registrei no Fórum em 2011 nada sabia sobre programação... Tudo que aprendi foi através do Fórum.
    Uma boa forma de aprendizado, e foi assim que aprendi, além da ajudas dos colegas foi tentando de encontrar a solução para as dúvidas dos demais.

    Ainda hoje meu maior aprendizado é justamente na ajuda dada, acredite, mais que na ajuda recebida.

    Sobre esta questão que você colocou sobre curso no fórum foge da alçada de nós moderadores e está a cargo do admin do Fórum.

    Mas fica a sua dica.

    O Fórum agradece o Retorno.

    Conteúdo patrocinado


    [Resolvido]Mensagem condicional em formulário Empty Re: [Resolvido]Mensagem condicional em formulário

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 19/5/2024, 10:34