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]Rotina de código em evento não é realizada corretamente (ajuda)

    OLDRIVG
    OLDRIVG
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 374
    Registrado : 20/07/2010

    [Resolvido]Rotina de código em evento não é realizada corretamente (ajuda) Empty [Resolvido]Rotina de código em evento não é realizada corretamente (ajuda)

    Mensagem  OLDRIVG 12/12/2018, 08:01

    Prezados, bom dia.

    Estou em fase final da criação de um aplicativo em access 2016-64bits, e surgiu a seguinte dificuldade:

    dentre os campos existentes no formulário, tem uma Caixa de Combinação "Tipodocumento" e o Grupo de Opções "GrEspecieDoc".

    Na caixa de combinação "TipoDocumento", no evento Ao Sair, possui o código a seguir:

    If Me.TipoDocumento.value = "Selecione" Then
    MsgBox "SELECIONE UM TIPO DE DOCUMENTO PARA CONTINUAR", vbInformation, "USUÁRIO"
    Me.TipoDocumento.SetFocus
    Else
    End If


    que obriga o usuário a realizar uma seleção para continuar a preencher os demais campos. Caso o usuário não faça a escolha e tente sair , o foco permanece na Caixa. Esta rotina está funcionando normal.

    No Grupo de Opções "GrEspecieDoc", no evento Ao Sair, possui implementado o código a seguir:  

    If IsNull(Me.GrEspecieDoc) = True Then
           MsgBox " ASSINALE UMA OPÇÃO PARA CONTINUAR", vbInformation, "USUÁRIO"
           Me.GrEspecieDoc.SetFocus
           Else
           End If


    que obriga o usuário a fazer uma escolha de opção para continuar a preencher os demais campos. Caso o usuário não faça a seleção de uma opção, o foco "deveria" permanecer no Grupo. Esta rotina não está funcionando conforme deveria.

    Após clicar em OK na MSGBOX do Grupo de Opções "GrEspecieDoc" caso o usuário não satisfaça a condição da rotina, o foco deveria permanecer no Grupo de Opções (como escrito acima), mas não acontece isto. O que ocorre é que o foco está passando para a Caixa de Combinação "TipoDocumento", em vez de permanecer no Grupo de Opções.

    Já tentei tudo que o meu parco conhecimento permite para encontrar o erro ou solução, sem sucesso.

    Caso alguém tenha alguma sugestão ou informação de onde estou errando, ficarei grato pelas mesmas.

    Anexei uma cópia do aplicativo para ilustrar o problema.
    Anexos
    [Resolvido]Rotina de código em evento não é realizada corretamente (ajuda) AttachmentPROTOCOLO - PRO(3).zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (356 Kb) Baixado 3 vez(es)
    Alexandre Fim
    Alexandre Fim
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3492
    Registrado : 13/12/2016

    [Resolvido]Rotina de código em evento não é realizada corretamente (ajuda) Empty Re: [Resolvido]Rotina de código em evento não é realizada corretamente (ajuda)

    Mensagem  Alexandre Fim 12/12/2018, 08:34

    Ola OLDRIVG

    É necessário setar o foco no grupo antes da mensagem. e após a mensagem vc coloca um "Exit Sub" pra finalizar na sub que está o código.

    Copie e cole o código abaixo.

    Boa sorte.

    Código:

    Private Sub GrEspecieDoc_Exit(Cancel As Integer)

        If IsNull(Me.GrEspecieDoc) = True Then
            Me.GrEspecieDoc.SetFocus
            MsgBox " ASSINALE UMA OPÇÃO PARA CONTINUAR", vbInformation, "                                                    ATENÇÃO USUÁRIO"
            Exit Sub
        End If
            
        Me.GrEspecieDoc.BorderColor = 0
        Me.Rótulo233.ForeColor = 0
        Me.Rótulo235.ForeColor = 0

    End Sub

    OLDRIVG
    OLDRIVG
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 374
    Registrado : 20/07/2010

    [Resolvido]Rotina de código em evento não é realizada corretamente (ajuda) Empty Re: [Resolvido]Rotina de código em evento não é realizada corretamente (ajuda)

    Mensagem  OLDRIVG 12/12/2018, 09:38

    Olá Alexandre Fim, bom dia.

    Agradeço-lhe a presteza e a atenção.

    A implementei a sua sugestão e funciona. O foco fica no Grupo de Opções. Mas também vai para a Caixa de Combinação "TipoDocumento".

    Entretanto, permanece um erro. Quando se tenta sair do Grupo de Opções "GrEspecieDoc" sem selecionar uma opção, o foco vai para a Caixa de Combinação "TipoDocumento"(fica em cor verde) e não sai mais. Mesmo selecionando uma opção e passando para outro campo. E este erro somente acontece quando se sai do Grupo de Opções sem selecionar e com o código Me.GrEspecieDoc.setfocus ativado. Se desativar, não ocorre o erro, mas em contra partida o foco passa para o campo "NumeroDocumento", ficando o Grupo de Opções também com foco (na cor vermelha) até selecionar.

    Não sei se você baixou o arquivo anexado, mas, caso tenha tempo, dê uma olhadinha para comprovar, sem querer abusar.

    Há alguma solução para este entrave?
    Agradeço
    FranklinJSP
    FranklinJSP
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Anónimo
    Mensagens : 479
    Registrado : 25/02/2016

    [Resolvido]Rotina de código em evento não é realizada corretamente (ajuda) Empty Re: [Resolvido]Rotina de código em evento não é realizada corretamente (ajuda)

    Mensagem  FranklinJSP 12/12/2018, 14:16

    Oi Oldri

    Em anexo, eu acho que é o que vc precisa!

    Saludos desde Bolivia


    .................................................................................
    Meu Português não é muito bom,
    mas eu gosto de colaborar... em qualquer idioma
    Smile "Access... minha paixão"
    OLDRIVG
    OLDRIVG
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 374
    Registrado : 20/07/2010

    [Resolvido]Rotina de código em evento não é realizada corretamente (ajuda) Empty Re: [Resolvido]Rotina de código em evento não é realizada corretamente (ajuda)

    Mensagem  OLDRIVG 13/12/2018, 07:12

    Bom dia, FranklinJSP.

    Agradeço-lhe pela a atenção e prestabilidade.

    É justamente o que você implementou que preciso. Funcionou perfeitamente. Inclusive adaptei as alterações que fez para o campo "DataDocumento", que estava com o mesmo entrave.

    Agradecido
    FranklinJSP
    FranklinJSP
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Anónimo
    Mensagens : 479
    Registrado : 25/02/2016

    [Resolvido]Rotina de código em evento não é realizada corretamente (ajuda) Empty Re: [Resolvido]Rotina de código em evento não é realizada corretamente (ajuda)

    Mensagem  FranklinJSP 14/12/2018, 15:28

    Que bom!!!

    lol! lol! lol!


    .................................................................................
    Meu Português não é muito bom,
    mas eu gosto de colaborar... em qualquer idioma
    Smile "Access... minha paixão"

    Conteúdo patrocinado


    [Resolvido]Rotina de código em evento não é realizada corretamente (ajuda) Empty Re: [Resolvido]Rotina de código em evento não é realizada corretamente (ajuda)

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 21/11/2024, 19:27