preciso criar um código que delete a imagem presente na planilha.
Bom, até o momento o código esta assim:
Código: Selecionar todos
Sub Imagem_simepar()
'fonte: https://forum.baboo.com.br/index.php?/topic/688214-macro-para-inserir-imagem/
Dim Pict
Dim Imagem As Object
Dim ImgFileFormat As String
Dim Celula As String
Celula = "AL32" ' local que ficará a imagem
ImgFileFormat = "Image Files JPG (*.jpg),*.jpg, Image Files GIF (*.gif),*.gif, Image Files BMP (*.bmp),*.bmp"
Pict = "http://www.simepar.br//radar/public/mscpr/MSC_PR_N4_1.gif" 'origem da imagem
If Pict = False Then End
Set Imagem = ActiveSheet.Pictures.Insert(Pict)
Imagem.Top = Range(Celula).Top
Imagem.Left = Range(Celula).Left
Imagem.ShapeRange.LockAspectRatio = msoFalse
'Imagem.Height = Range(Celula).Height * 12 '12 = Quantidade de linhas...
'Imagem.Width = Range(Celula).Width * 3 '3 = Quantidade de colunas...
End Sub
cada vez que gero o relatório, pois a cada relatório se cria uma imagem sobreposta...
tentei inserir os códigos antes do comando "Celula = "AL32" ' local que ficará a imagem"
1º.
Range("AL32").Select
'Selection.ClearContents
Entendi pq não funcionou.. é pq a imagem não fica alocada na célula...
2º
ActiveSheet.Shapes.SelectAll
'Selection.Delete
Funciona.. mas eu tenho um gráfico na planilha, então acaba deletando junto...
3º
ActiveSheet.Shapes.Range(Array("Picture 10")).Select
'Selection.Delete
Esse eu tirei ao tentar gravar uma macro e compreender a lógica, parece uma saída, porém
não existe uma sequencia lógica para "Picture XX", ora começa com 1 e depois que gera outro
relatório passa para 10.. 3.. 21...
Penso... há alguma forma de identificar este "Picture XX" específico dentro da plan?
Ou então eu nomeá-lo na criação? Creio que a resposta já esteja dentro do código inicial, mas
sou ignorante no assunto...
Agradeço antecipadamente pela a ajuda. abraço!