Como criar e adicionar slides a apresentações do PowerPoint com VBA?

Alguns dias atrás, um leitor perguntou sobre a existência de uma maneira de automatizar a criação de apresentações do PowerPoint a partir do zero e, em seguida, adicionar rapidamente slides a essa apresentação existente. Eu pensei que esse script pode estar altamente na lista das macros do PowerPoint mais úteis. 

Como indicamos no passado, o PowerPoint não inclui um Gravador de Macros (ao contrário do Excel e do Word, que possuem gravadores integrados para Macro). Portanto, ficamos com o bom e velho Visual Basic for Application que podemos usar para criar macros simples para automatizar o PowerPoint. Existem outras alternativas para a Automação do PowerPoint, mas essas vão além do escopo deste tutorial.

No breve tutorial de hoje, abordaremos três casos de uso diferentes:

  1. Criação de nova apresentação (em branco ou usando um modelo)
  2. Adicione slides a uma apresentação existente.
  3. Uma mistura dos dois casos mencionados acima (Criar do zero e adição de slides)

Vamos começar.

Olhe para a fita. Se você não vir a entrada Desenvolvedor no menu, antes de iniciar sua codificação, você precisará habilitar a guia Desenvolvedor.

Depois de tornar o menu Desenvolvedor visível em sua Faixa de Opções, vá em frente e pressione Desenvolvedor , depois pressione o botão Visual Basic (ou simplesmente vá em frente e pressione Alt+F11) para abrir o IDE do Visual Basic.

VBA para criar apresentação do PowerPoint

  1. No Editor VB, clique com o botão direito do mouse em VBAProject e pressione Inserir .
  2. Selecione Módulo .
  3. Cole o seguinte código no módulo recém-criado.
Sub CreatePresentation()
Dim NewPres as Presentation
Set NewPres = Presentations.Add
NewPres.SaveAs("MyPresentation.pptx")
End Sub
  1. Clique em Arquivo e depois em Salvar.
  2. Para executar seu código, clique em Executar e, em seguida, selecione Executar formulário de sub/usuário (ou simplesmente F5).
  3. Feche o editor VB.

VBA para inserir slides

  1. No Editor VB, clique com o botão direito do mouse em VBAProject e pressione Inserir.
  2. Selecionar módulo
  3. Cole o seguinte código no módulo recém-criado.
Sub CreateSlide()
Dim NewSlide as Slide
'This statement ads a title slide
Set NewSlide = ActivePresentation.Slides.Add(Index:=1, Layout:=ppLayoutTitle)
'This statement adds a blank slide in the second place
Set NewSlide = ActivePresentation.Slides.Add(Index:=2, Layout:=ppLayoutBlank)
End Sub
  1. Clique em Arquivo e depois em Salvar.
  2. Para executar seu código, clique em Executar e, em seguida, selecione Executar formulário de sub/usuário (ou simplesmente F5).
  3. Feche o editor VB.

Macro para configurar uma nova apresentação e adicionar slides

Isso seria apenas misturar os dois trechos descritos acima.

Sub CreatePres_AddSlides()
Dim NewPres as Presentation
Dim NewSlide as Slide
Set NewPres = Presentations.Add
NewPres.SaveAs("MyPresentation.pptx")
' Title Slide
Set NewSlide = ActivePresentation.Slides.Add(Index:=1, Layout:=ppLayoutTitle)
'This statement adds a blank slide in the second place
Set NewSlide = ActivePresentation.Slides.Add(Index:=2, Layout:=ppLayoutBlank)
'Save the new PowerPoint file
NewPres.SaveAs("MyPresentation.pptx")
End Sub

Em seguida, você pode consultar nosso tutorial sobre como criar formas programaticamente no PowerPoint com VBA

Gerar uma apresentação do PowerPoint a partir do Excel

O último caso é que você gostaria de criar uma apresentação do PowerPoint diretamente de uma planilha do Excel. Você pode empregar a mesma técnica do Word e de outros aplicativos do Microsoft 365.

  • Vincule a planilha ao modelo de dados do PowerPoint (em Ferramentas>>Referências)
  • Insira um botão em sua planilha do Excel (Desenvolvedor >> Inserir e, em seguida, escolha um botão de comando).
  • Insira o código VBA abaixo em seu projeto VBA de planilha (diretamente na planilha ou em um módulo VBA)
  • Modifique o script conforme necessário.
  • Execute (pressione F5) e teste o resultado.
Sub CreatePresentationFromExcel()


Dim MyPPt As PowerPoint.Application
Dim NewPres As PowerPoint.Presentation
Dim NewSlide As Slide
Set MyPPt = CreateObject("PowerPoint.Application")

Set NewPres = MyPPt.Presentations.Add
Set NewSlide = MyPPt.ActivePresentation.Slides.Add(Index:=1, Layout:=ppLayoutTitle)

NewPres.SaveAs ("MyPresentation.pptx")
NewPres.Close

MyPPt.Quit

MsgBox ("Presentation saved")
End Sub

Aproveite 🙂

Prós do Excel VBA PowerPoint

  • Usar VBA no Powerpoint facilita o manuseio se um arquivo ppt tiver tantos slides com conteúdo enorme.
  • VBA com Powerpoint oferece um toque de automação mesmo com funções limitadas disponíveis.

Contras do Excel VBA PowerPoint

  • Precisamos selecionar a Biblioteca de objetos do Microsoft PowerPoint 15.0 na opção Referência localizada na opção do menu Ferramentas, necessária no início do exemplo 1, sempre que executamos o código do PowerPoint.

Coisas para lembrar

  • Salve o arquivo no formato Macro-Enable Presentation após escrever o código. Isso nos ajudará a evitar perder o código e usá-lo várias vezes no futuro.
  • O recurso de recodificação não funcionará aqui, pois precisamos pular do Excel para o PowerPoint alterando a interface entre as páginas.
  • Sempre compile o código antes de executá-lo. Isso ajudará você a encontrar o erro no código. Isso é bastante útil quando escrevemos grandes linhas de código.
  • Para executar e implementar o código precisamos abrir a planilha Excel com o Gráfico que queremos colar no slide do PowerPoint.
  • Podemos alinhar o gráfico no PowerPoint de acordo com nossas necessidades.

Deixar um comentário

Como criar um sistema simples de rastreamento de leads no Excel antes de comprar um CRM

Como criar um sistema simples de rastreamento de leads no Excel antes de comprar um CRM

Antes de investir em um software de CRM, crie uma planilha de acompanhamento de leads prática no Excel com tabelas, listas suspensas, datas de acompanhamento, filtros, formatação condicional e um painel de controle simples com tabela dinâmica.

Planilha de Presença Simples e Imprimível para Creche Domiciliar: O Que Registrar e Por Quê

Planilha de Presença Simples e Imprimível para Creche Domiciliar: O Que Registrar e Por Quê

Utilize esta folha de presença simples e imprimível para creche domiciliar para registrar chegadas, saídas, ausências, assinaturas e documentos necessários.

Planilha de contagem de estoque simples para Excel: um layout pronto para o varejo que permite conciliações rápidas.

Planilha de contagem de estoque simples para Excel: um layout pronto para o varejo que permite conciliações rápidas.

Crie uma planilha simples de contagem de estoque em Excel para lojas de varejo com controles de SKU, localização, quantidade contada, variação, recontagem e impressão.

Modelo de estratégia de marketing de uma página para empresas locais (imprimível)

Modelo de estratégia de marketing de uma página para empresas locais (imprimível)

Utilize este modelo de estratégia de marketing de uma página, pronto para impressão, para escolher um público-alvo local, oferta, combinação de canais, orçamento, ações e metas mensuráveis.

Modelo gratuito de planilha Excel para escala de trabalho de funcionários com calculadora automática de horas.

Modelo gratuito de planilha Excel para escala de trabalho de funcionários com calculadora automática de horas.

Crie uma escala de trabalho gratuita para seus funcionários no Excel, com horários de início e término, descontos de intervalos, gestão de turnos noturnos, totais semanais e uma calculadora de horas simples.

Melhores aplicativos gratuitos de faturamento para pequenas empresas de serviços nos EUA (2026)

Melhores aplicativos gratuitos de faturamento para pequenas empresas de serviços nos EUA (2026)

Compare os melhores aplicativos gratuitos de faturamento para empresas de serviços nos EUA em 2026, incluindo Zoho Invoice, Square, Wave, PayPal e Invoice Ninja.

Planilha simples de controle de folha de pagamento quinzenal em Excel para pequenas equipes: configuração ideal para iniciantes

Planilha simples de controle de folha de pagamento quinzenal em Excel para pequenas equipes: configuração ideal para iniciantes

Crie uma planilha simples de controle de folha de pagamento quinzenal no Excel para uma pequena equipe, com abas claras, fórmulas, verificações e limites práticos para uma conciliação segura da folha de pagamento.

Como exportar contatos do Salesforce para um formato Excel limpo

Como exportar contatos do Salesforce para um formato Excel limpo

Aprenda como exportar contatos do Salesforce para um arquivo Excel limpo, preservando IDs e campos de texto, removendo duplicados com segurança e evitando erros comuns em arquivos CSV.

Modelo de orçamento de obras de construção imprimível em Excel para pequenos empreiteiros

Modelo de orçamento de obras de construção imprimível em Excel para pequenos empreiteiros

Crie um orçamento de construção imprimível no Excel com categorias de custos práticas, fórmulas, campos de margem de lucro, configurações de impressão e uma lista de verificação pronta para o empreiteiro.

Checklist de Planejamento de Eventos e Modelo de Orçamento para Word

Checklist de Planejamento de Eventos e Modelo de Orçamento para Word

Use este checklist de planejamento de eventos e modelo de orçamento imprimível no Word para rastrear responsáveis, prazos, custos, fornecedores e a prontidão do dia do evento com verificações de qualidade claras.