Uma família de softwares de planilhas da Microsoft com ferramentas para analisar, criar gráficos e comunicar dados.
(Aviso: As informações fornecidas foram traduzidas usando uma ferramenta de tradução automática; embora nos esforcemos para garantir a precisão, as traduções podem nem sempre refletir totalmente o significado, o contexto ou a intenção do conteúdo original.)
Olá, Adérito L. Pereira - ALPCONSULTORIA
Obrigado por entrar em contato com o fórum de perguntas e respostas da Microsoft.
Lamentamos a situação frustrante que você está enfrentando. No Excel (2007–2019), o método Range.CopyPicture só aceita Format:=xlBitmap ou Format:=xlPicture. xlJPG não é um valor válido para esse parâmetro, por isso a macro para nessa linha com erro.
Aqui estão algumas sugestões que você pode tentar para resolver esse problema:
Corrija a linha que está dando erro (troque xlJPG por um formato válido):
rng.CopyPicture Appearance:=xlScreen, Format:=xlPicture ' ou xlBitmap
Se a sua meta final é gerar um arquivo JPG, o caminho típico é copiar como imagem e exportar via um Chart temporário (porque o Chart tem .Export para JPG/PNG):
Sub ExportarRangeComoJPG(rng As Range, ByVal caminhoCompleto As String)
Dim co As ChartObject
Application.CutCopyMode = False
DoEvents
rng.CopyPicture Appearance:=xlScreen, Format:=xlPicture
Set co = rng.Parent.ChartObjects.Add(0, 0, rng.Width, rng.Height)
co.Activate
co.Chart.Paste
co.Chart.Export Filename:=caminhoCompleto, Filtername:="JPG"
co.Delete
End Sub
Se o erro acontece “às vezes” (intermitente), tente estabilizar limpando o modo de cópia e forçando o Excel a “respirar” antes e depois do CopyPicture:
Application.CutCopyMode = False
DoEvents
rng.CopyPicture Appearance:=xlScreen, Format:=xlPicture
DoEvents
Agradecemos sua paciência ao ler e esperamos que essas informações tenham sido úteis para você.
Se a resposta for útil, clique em “Aceitar resposta” e vote positivamente. Se você tiver mais perguntas sobre esta resposta, clique em “Comentar”.
Observação: siga as etapas em nossa documentação para ativar as notificações por e-mail se desejar receber a notificação por e-mail relacionada a este tópico.