Esta demonstração substitui várias deficiências do Excel para inserir imagens e aplicar transparências.
Existem, pelo menos, duas possibilidades de introduzir uma imagem em uma folha de Excel,
1°)
Inserir Imagem
Fita Inserir>> Imagem,
Você pode inserir a imagem que quiser, mas ... sim, há um mas, eu quis introduzir uma imagem de 1920 x 1088 pixels e a imagem tinha 1920 x 1088
Centímetros!!.
Outra solução: Remover um controle de imagem da ferramenta Controles. (OCX), espalhá-lo sobre a folha, clicar com o botão direito e selecionar >> Desenvolvedor >> Inserir >> Imagem e aplicá-lo na folha.
Clicar com o botão direito na imagem >> Selecionar Propriedades.
Colocar a propriedade PictureSizeMode = 3
Na janela Propriedades, continue com o Picture e selecione uma imagem a ser incluída no controle.
Até aqui, tudo bem, a imagem foi inserida no controle e manteve sua relação largura/altura. Você pode ajustar o tamanho do controle para que ele coincida com as dimensões da imagem.
Já é bem bom, mas a transparência ainda não está disponível.
2°)
Inserir Shape retângulo
Fita Inserir >> Forma
Desenhar o retângulo como quiser
Clicar com o botão direito >> Formato da forma. Marcar Preenchimento com Imagem ou textura .
Clicar no botão Arquivo... para mudar a imagem
Pois é,... há uma imagem que podemos transformar em transparência mas... o formato da imagem não está disponível !!!
Esta é exatamente a razão desta dica.
- Introduzir uma imagem mantendo o formato.
- Manter as dimensões que você determinou anteriormente.
- Manter o formato da imagem.
- Transparência disponível.
Uso dos APIs de GDI+ para as dimensões da imagem.
Você pode mover a imagem, girá-la, alterar as dimensões da superfície disponível.
Mas não é aconselhável redimensionar a imagem com as alças pois você pode perder o formato da imagem.
Para a demonstração, eu determinei a área de superfície disponível com o canto superior direito do botão
Alterar a imagem
Mas é fácil entrar diretamente as dimensões no código
No Módulo1, a rotina
SubstituirImagem tem o código.
'Retângulo disponível para a imagem, em pontos
With Sheets("Image").CommandButton1
Dispo.W = (.Left + .Width)
Dispo.H = .Top
End With
Substituir estas linas por
'Retângulo disponível para a imagem, em pontos
Dispo.W = A largura em pontos
Dispo.H = A altura em pontos
ATENÇÃO: Essas dimensões não são a da imagem, dependendo da proporção do arquivo de imagem apenas uma das duas existirá.
Se a altura for maior que a largura, é a altura que será determinante. A largura servirá para centralizar a imagem e, inversamente, se a largura for maior que a altura.
Download
Arquivo com imagem de demonstração (em francês) 3,2 MB
Arquivo sem imagem (em francês) 32 KB
Este documento, intitulado 'Excel 2007 - Inserir uma imagem com transparência', está disponível sob a licença
Creative Commons. Você pode copiar e/ou modificar o conteúdo desta página com base nas condições estipuladas pela licença. Não se esqueça de creditar o
CCM (
br.ccm.net) ao utilizar este artigo.