Como inserir uma imagem em uma célula usando VBA no Excel

Você pode inserir imagens facilmente em planilhas do Excel e editá-las com código de macro. Veja como inserir uma imagem em uma célula usando VBA no Excel .

Como inserir uma imagem em uma célula usando VBA no Excel

Visual Basic for Applications, abreviado como VBA, é uma forma de Visual Basic 6 integrada aos programas do Microsoft Office. Por meio da codificação, o VBA permite automatizar tarefas em aplicativos do Office, incluindo o Excel. Em alguns casos, você pode até adicionar novos recursos ao Excel usando VBA.

Mesmo que você precise trabalhar com código para usar o VBA, isso não significa que o VBA esteja cheio de letras e números. Com o VBA no Excel, você pode criar uma macro que permite inserir uma imagem em uma célula ou intervalo de células. Aqui está o que você precisa saber sobre como inserir imagens em células no Excel usando VBA.

Como inserir imagens em células usando VBA no Excel

Para criar uma macro que insere uma imagem em uma célula do Excel usando VBA, você realmente não precisa de nenhum conhecimento avançado de Visual Basic. Tudo que você precisa fazer é ativar as ferramentas do desenvolvedor, criar uma macro e colar o código apropriado. Claro, você também pode inserir imagens no Excel sem usar VBA. No entanto, neste artigo, focaremos no VBA.

1. Ative as ferramentas do desenvolvedor

Para usar VBA no Excel, você precisa habilitar as ferramentas do desenvolvedor. Esta ação habilitará a guia Desenvolvedor na faixa de opções, que está desabilitada por padrão.

  1. Abra o Excel .
  2. Vá para o menu Arquivo .
  3. Clique em Opções na parte inferior da tela. A janela Opções do Excel aparecerá.
  4. Nas Opções do Excel, vá para a guia Personalizar faixa de opções .
  5. Nas guias principais , marque Desenvolvedor .

Como inserir uma imagem em uma célula usando VBA no Excel

Agora as ferramentas do desenvolvedor, incluindo acesso VBA, estão habilitadas. Você não precisa fazer isso sempre que quiser usar o VBA no Excel. As ferramentas do desenvolvedor estarão sempre ativadas até que você as desative.

2. Crie macros e insira código

  1. No Excel, vá para a guia Desenvolvedor .
  2. Na seção Código, selecione Macros .
  3. Na nova janela, insira o nome da macro em Nome da macro . O artigo usará insertPhotoMacro .
  4. Clique em Criar .

Como inserir uma imagem em uma célula usando VBA no Excel

Após clicar em Criar, a janela do VBA será aberta e exibirá o código da sua macro. Atualmente, o código será composto por 2 linhas: uma Sub para iniciar a macro e uma End Sub para finalizá-la.

Como inserir uma imagem em uma célula usando VBA no Excel

Adicione um pouco de código a esta macro. Adicione a seguinte linha de código entre as duas linhas:

Dim photoNameAndPath As Variant
Dim photo As Picture
photoNameAndPath = Application.GetOpenFilename(Title:="Select Photo to Insert")
If photoNameAndPath = False Then Exit Sub
Set photo = ActiveSheet.Pictures.Insert(photoNameAndPath)
With photo
.Left = ActiveSheet.Range("A1").Left
.Top = ActiveSheet.Range("A1").Top
.Width = ActiveSheet.Range("A1").Width
.Height = ActiveSheet.Range("A1").Height
.Placement = 1
End With

O código final ficará assim:

Como inserir uma imagem em uma célula usando VBA no Excel

Você não precisa se preocupar em salvar esse processo. Quaisquer alterações feitas no VBA são salvas imediatamente.

Agora é hora de ver o código em ação:

  1. Feche a janela do VBA.
  2. Vá para a guia Desenvolvedor no Excel.
  3. Selecione Macros na seção Código.
  4. Destaque a macro que você acabou de criar.
  5. Clique em Executar .

Agora será aberta uma mensagem solicitando que você localize o arquivo de imagem que deseja inserir. Selecione a foto e clique em Abrir. Agora você verá a imagem na célula A1.

Observe que o Excel reduzirá a imagem para que caiba na célula A1. Você pode alterá-lo e alterar o código para inserir imagens em outras células, até mesmo em um intervalo de células. Na próxima seção, separaremos o código e explicaremos os parâmetros.

3. Dividir código

Para que o código VBA funcione da maneira desejada, você precisa entendê-lo. Ao fazer isso, você pode alterar o código para inserir imagens em qualquer célula de qualquer tamanho.

Sub insertPhotoMacro()
Dim photoNameAndPath As Variant
Dim photo As Picture
photoNameAndPath = Application.GetOpenFilename(Title:="Select Photo to Insert")
If photoNameAndPath = False Then Exit Sub
Set photo = ActiveSheet.Pictures.Insert(photoNameAndPath)
With photo
.Left = ActiveSheet.Range("A1").Left
.Top = ActiveSheet.Range("A1").Top
.Width = ActiveSheet.Range("A1").Width
.Height = ActiveSheet.Range("A1").Height
.Placement = 1
End With
End Sub

Quando o código começa, a instrução Dim é usada para determinar o tipo de variável. Temos dois tipos de variáveis: photoNameAndPath e photo . Primeiro a variável e depois a imagem.

A partir daí, a variável photoNameAndPath é executada e abrirá um aplicativo para obter a localização do arquivo da foto. Isso é feito por meio de Application.GetOpenFileName . O parâmetro Título é opcional. O conteúdo dentro dele é exibido como o nome da janela.

Usando If photoNameAndPath = False Then Exit Sub , se um endereço inválido ou vazio for fornecido, o processo será encerrado. No entanto, se um arquivo adequado for fornecido, Set photo = ActiveSheet.Pictures.Insert(photoNameAndPath) indica que a imagem deve ser definida como uma variável conforme definido originalmente. Ele será inserido na planilha ativa.

Por fim, use Com foto e as 5 linhas depois dela para determinar a localização da foto. .Left e .Top referem-se à posição inicial, enquanto .Width e .Height referem-se à posição final. Se você pretende inserir imagens em outra célula ou intervalo, estas são as linhas que você deve alterar.

.Placement indica que a imagem deve ser redimensionada para caber na célula ou inserida de forma livre. Configurá-lo como 1 irá redimensioná-lo de acordo com a célula.

Finalmente, o código acima usa End With e End Sub para fechar a macro. Agora você pode alterar as variáveis ​​photoNameAndPath e photo para qualquer outro nome que desejar. Apenas lembre-se de manter os nomes consistentes em todo o código.

Acima está como usar o VBA para inserir imagens em células do Excel . Espero que o artigo seja útil para você.

Deixar um comentário

Tendências de podcasting que você precisa conhecer em 2026: um guia para iniciantes

Tendências de podcasting que você precisa conhecer em 2026: um guia para iniciantes

É novo no mundo dos podcasts? Descubra as tendências de 2026 que moldarão vídeo, descoberta, transcrições, IA, análises, monetização e um plano de lançamento prático.

Masterclass de UGC: Crie conteúdo gerado pelo usuário que conquista confiança e impulsiona a ação.

Masterclass de UGC: Crie conteúdo gerado pelo usuário que conquista confiança e impulsiona a ação.

Um curso prático e completo sobre conteúdo gerado pelo usuário (UGC) para encontrar, autorizar, orientar, publicar e mensurar conteúdo de clientes e criadores sem perder a autenticidade.

Por que a construção de comunidade é o novo marketing — e quando não é.

Por que a construção de comunidade é o novo marketing — e quando não é.

A construção de comunidade pode aprofundar a confiança, a retenção, o feedback e a defesa da marca, mas não substitui todos os canais de marketing. Compare as vantagens e desvantagens e escolha o modelo certo.

Navigating Social Media Algorithm Changes in 2026: What’s Confirmed, Contextual, and Still Unknown

Navigating Social Media Algorithm Changes in 2026: What’s Confirmed, Contextual, and Still Unknown

Learn what major social platforms have actually confirmed about ranking changes in 2026, what depends on context, and how to adapt without chasing myths.

Narrativa autêntica no marketing de marcas: como construir confiança sem parecer artificial.

Narrativa autêntica no marketing de marcas: como construir confiança sem parecer artificial.

Aprenda como tornar a narrativa da sua marca crível, humana e específica — usando provas, tensão real, histórias de clientes éticas e uma verificação prática de autenticidade.

Estratégias de Email Marketing para o Sucesso no 4º Trimestre: O Que Priorizar, Testar e Considerar

Estratégias de Email Marketing para o Sucesso no 4º Trimestre: O Que Priorizar, Testar e Considerar

Desenvolva uma estratégia de e-mail mais inteligente para o quarto trimestre, equilibrando alcance, frequência, descontos, automação, entregabilidade e métricas para um crescimento lucrativo durante as festas de fim de ano.

Como criar vídeos curtos que convertem: um guia prático

Como criar vídeos curtos que convertem: um guia prático

Aprenda a criar vídeos curtos que convertem, equilibrando ganchos, formato, autenticidade, chamadas para ação (CTA), adequação à plataforma e testes no TikTok, Reels e Shorts.

The Shift from Influencers to Key Opinion Consumers (KOCs): What Brands Need to Know in 2026

The Shift from Influencers to Key Opinion Consumers (KOCs): What Brands Need to Know in 2026

Why are brands testing KOCs instead of relying only on influencers? Learn what KOCs are, why social commerce favors them, common myths, and how to run a measurable pilot.

SEO para TikTok em 2026: Como posicionar vídeos nos resultados de busca sem usar palavras-chave em excesso.

SEO para TikTok em 2026: Como posicionar vídeos nos resultados de busca sem usar palavras-chave em excesso.

Aprenda um fluxo de trabalho prático de SEO para TikTok em 2026: encontre a demanda real de busca, corresponda à intenção de busca, otimize cada vídeo e meça o que melhora a visibilidade.

Preparação para a Black Friday no e-commerce: um checklist prático para a loja física

Preparação para a Black Friday no e-commerce: um checklist prático para a loja física

Prepare sua loja virtual para a Black Friday com um checklist prático que inclui ofertas, velocidade do site, finalização da compra, estoque, logística, análises, segurança e suporte.