Página 1 de 1

Erro em tempo de execução '53' [RESOLVIDO]

Enviado: Ter Jan 10, 2017 1:36 pm
por Thiago Azevedo
Prezados, boa tarde!

Gostaria da ajuda de todos na solução de um problema. Possuo um nível de excel bom, e estou começando incluir o VBA em minha rotina.
Desenvolvi uma planilha de consulta de projetos de engenharia contendo todo os histórico do projeto, incluindo imagens de antes e depois.
Fiz um consulta no fórum, e encontrei uma forma de adicionar tais imagens com o LoadPicture utilizando uma célula com o endereço da imagem. Está funcionando perfeitamente.
O problema é que quando essa imagem não consta no caminho indicado, que é normal no caso, o Excel retorna "Erro em tempo de execução '53': O arquivo não foi localizado".
Através das leituras que fiz no fórum, aprendi que é normal retornar esse erro, caso não haja nenhum arquivo de imagem indicado no caminho. Gostaria de saber se existe um jeito de em vez de retonar o Erro 53, o excel preencha uma célula específica com um texto pré definido, que seria o ideal, ou uma Msg Box informando que não há imagens do projeto em específico.

O código que utilizei é simples:

Plan1.Image1.Picture = LoadPicture(Plan1.Range("z64").Value) - Antes
Plan1.Image1.Picture = LoadPicture(Plan1.Range("z65").Value) - Depois

Agradeço a ajuda de todos.

Re: Erro em tempo de execução '53'

Enviado: Ter Jan 10, 2017 2:20 pm
por srobles
Thiago, boa tarde!

Experimente utilizar o seguinte tratamento para o erro :

Código: Selecionar todos

On Error Goto vErro
'Insira o código para carregar a imagem no objeto Image

vErro:
   If err=53 Then 'Se o código de erro retornado for igual 53
      MsgBox "O projeto pesquisado ainda não possui imagens cadastradas!", vbCritical, "Erro"
      ThisWorkBook.Sheets("Plan1").Range("Z64")="Adicione o caminho da imagem"
      ThisWorkBook.Sheets("Plan1").Range("Z65")="Adicione o caminho da imagem"
   End If
Abs

Re: Erro em tempo de execução '53'

Enviado: Ter Jan 10, 2017 2:55 pm
por Thiago Azevedo
Perfeito!
Sai melhor do que esperava, muito obrigado!

srobles escreveu:Thiago, boa tarde!

Experimente utilizar o seguinte tratamento para o erro :

Código: Selecionar todos

On Error Goto vErro
'Insira o código para carregar a imagem no objeto Image

vErro:
   If err=53 Then 'Se o código de erro retornado for igual 53
      MsgBox "O projeto pesquisado ainda não possui imagens cadastradas!", vbCritical, "Erro"
      ThisWorkBook.Sheets("Plan1").Range("Z64")="Adicione o caminho da imagem"
      ThisWorkBook.Sheets("Plan1").Range("Z65")="Adicione o caminho da imagem"
   End If
Abs

Re: Erro em tempo de execução '53'

Enviado: Ter Jan 10, 2017 3:48 pm
por srobles
Thiago,

Opa, que bom que ficou como desejado! Favor, edite o título de seu post com o texto [RESOLVIDO], ok?

Quaisquer dúvidas, pode contar com o fórum.

Abs