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]Erro quando não encontra ficheiro (bandeira do País)

    avatar
    JIR
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 122
    Registrado : 28/08/2016

    [Resolvido]Erro quando não encontra ficheiro (bandeira do País) Empty [Resolvido]Erro quando não encontra ficheiro (bandeira do País)

    Mensagem  JIR em 20/1/2020, 16:06

    Olá a todo o forum,

    num formulário, tenho o código numa caixa de combinação que, conforme o País, atualiza a bandeira do País, o problema está quando no diretorio, não tenho bandeira para esse País, dá erro run time 2220
    não consegue abrir o ficheiro c:\GEQ\Aplicacao\BD\Logotipo\Portugal.gif
    quando é um registo novo, ou quero alterar o País dá esse erro logo ao atualizar o País

    código

    Private Sub NomePaís_AfterUpdate()
      'Me.NomeConti = Me.NomePaís.Column(2)
      BandeiraPaís.Picture = Application.CurrentProject.path & "\Logotipo\" & NomePaís.Value & ".gif"
    Me.Refresh
    End Sub

    Se puderem ajudar agradeço pois pouco entendo de VB

    José Silva


    Última edição por JIR em 20/1/2020, 22:19, editado 1 vez(es)
    Marcelo David
    Marcelo David
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3007
    Registrado : 21/04/2011

    [Resolvido]Erro quando não encontra ficheiro (bandeira do País) Empty Re: [Resolvido]Erro quando não encontra ficheiro (bandeira do País)

    Mensagem  Marcelo David em 20/1/2020, 18:07

    Boa tarde,
    experimente assim:

    Código:
    Private Sub NomePaís_AfterUpdate()
           On Error Goto TrataErro
          'Me.NomeConti = Me.NomePaís.Column(2)
           BandeiraPaís.Picture = Application.CurrentProject.path & "\Logotipo\" & NomePaís.Value & ".gif"
           Me.Refresh
    Exit Sub

    TrataErro:
          If Err.Numer = 2220 Then
             c:\GEQ\Aplicacao\BD\Logotipo\SemImagem.gif
             Err.Clear
          Else
             msgbox err.Description,vbExclamation,"Erro "& err.Number
          End If
    End Sub


    .................................................................................
    Marcelo David
    www.mrdsystem.com.br (em construção)
    avatar
    JIR
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 122
    Registrado : 28/08/2016

    [Resolvido]Erro quando não encontra ficheiro (bandeira do País) Empty Re: [Resolvido]Erro quando não encontra ficheiro (bandeira do País)

    Mensagem  JIR em 20/1/2020, 22:17

    Boa Noite, Marcelo,

    não funcionou a sua sugestão pois esta linha fica logo a vermelho e depois vai para um erro de sintax
    C:\GEQ\Aplicacao\BD\Logotipo\SemImagem.gif

    se não existir outra forma, terei de criar muitas centenas de imagens mesmo ficticias de bandeiras de Países e colocar no diretorio

    C:\GEQ\Aplicacao\BD\Logotipo\xxxxxxxx.gif

    o que pretendo é ao selecionar o País na caixa de combinação, procura no diretorio a imagem com o mesmo nome e apresenta na caixa de imagem do formulário
    caso não tenha nenhuma imagem com esse nome apresentaria sempre a imagem designada por SemImagem.gif

    não estou a conseguir

    José Silva
    Marcelo David
    Marcelo David
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3007
    Registrado : 21/04/2011

    [Resolvido]Erro quando não encontra ficheiro (bandeira do País) Empty Re: [Resolvido]Erro quando não encontra ficheiro (bandeira do País)

    Mensagem  Marcelo David em 21/1/2020, 11:44

    Na verdade foi falha minha. Esqueci de por a linha completa e corretamente.
    Na linha que está fincando em vermelha do erro:
    C:\GEQ\Aplicacao\BD\Logotipo\SemImagem.gif

    Altere para essa:

    BandeiraPaís.Picture = "C:\GEQ\Aplicacao\BD\Logotipo\SemImagem.gif"


    .................................................................................
    Marcelo David
    www.mrdsystem.com.br (em construção)
    ahteixeira
    ahteixeira
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 6554
    Registrado : 15/03/2013

    [Resolvido]Erro quando não encontra ficheiro (bandeira do País) Empty Re: [Resolvido]Erro quando não encontra ficheiro (bandeira do País)

    Mensagem  ahteixeira em 21/1/2020, 12:27

    Olá a todos,

    Outra forma simples, poderia ser:
    Código:
    Private Sub NomePaís_AfterUpdate()
        If Dir(Application.CurrentProject.Path & "\Logotipo\" & NomePaís.Value & ".gif") <> "" Then
            'Me.NomeConti = Me.NomePaís.Column(2)
            BandeiraPaís.Picture = Application.CurrentProject.Path & "\Logotipo\" & NomePaís.Value & ".gif"
            Me.Refresh
        End If
    End Sub

    Se pretender como recomendou o nosso colega Marcelo David de mostrar uma imagem quando não tem ficheiro (bandeira), seria:
    Código:
    Private Sub NomePaís_AfterUpdate()
        If Dir(Application.CurrentProject.Path & "\Logotipo\" & NomePaís.Value & ".gif") <> "" Then
            'Me.NomeConti = Me.NomePaís.Column(2)
            BandeiraPaís.Picture = Application.CurrentProject.Path & "\Logotipo\" & NomePaís.Value & ".gif"
        Else
            BandeiraPaís.Picture = Application.CurrentProject.Path & "\Logotipo\SemImagem.gif"
        End If
        
        Me.Refresh
    End Sub

    Ajustei o título do tópico, para ficar mais fácil nas pesquisas.

    Abraço a todos
    avatar
    JIR
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 122
    Registrado : 28/08/2016

    [Resolvido]Erro quando não encontra ficheiro (bandeira do País) Empty Re: [Resolvido]Erro quando não encontra ficheiro (bandeira do País)

    Mensagem  JIR em 21/1/2020, 14:45

    Boa Tarde, Marcelo e Ahteixeira
    ambos os exemplos funcionaram perfeitamente e serviram como lição
    optei pela solução do Marcelo dado que para o efeito, quando não tem bandeira do País quero que por defeito apareça esta imagem "SemImagem.gif"


    Meus agradecimentos

    José Silva
    ahteixeira
    ahteixeira
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 6554
    Registrado : 15/03/2013

    [Resolvido]Erro quando não encontra ficheiro (bandeira do País) Empty Re: [Resolvido]Erro quando não encontra ficheiro (bandeira do País)

    Mensagem  ahteixeira em 21/1/2020, 14:53

    Olá a todos,

    José Silva, obrigado pelo retorno, o fórum agradece.

    Abraço a todos

    Conteúdo patrocinado

    [Resolvido]Erro quando não encontra ficheiro (bandeira do País) Empty Re: [Resolvido]Erro quando não encontra ficheiro (bandeira do País)

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 5/4/2020, 14:07