Integração Entre Python e PowerPoint: Crie Apresentações Automáticas

Aprenda como fazer integração entre Python e PowerPoint para criar apresentações automáticas. Gere slides, textos e gráficos com código Python passo a passo.

Integração Entre Python e PowerPoint

Já pensou em gerar uma apresentação completa no PowerPoint automaticamente usando Python?

Pois é isso é totalmente possível, e neste conteúdo você vai aprender como integrar o Python ao PowerPoint para criar slides, textos e até gráficos de forma automatizada.

Para fazer o download do(s) arquivo(s) utilizados na aula, preencha com o seu e-mail:

Não vamos te encaminhar nenhum tipo de SPAM! A Hashtag Treinamentos é uma empresa preocupada com a proteção de seus dados e realiza o tratamento de acordo com a Lei Geral de Proteção de Dados (Lei n. 13.709/18). Qualquer dúvida, nos contate.

Por que integrar Python e PowerPoint?

Ao trabalhar com análises de dados, relatórios automatizados ou dashboards, é comum precisar apresentar os resultados.

Em vez de criar manualmente cada slide, você pode usar Python para gerar apresentações completas no PowerPoint automaticamente, com dados atualizados, textos e até gráficos.

Essa automação economiza tempo, evita erros e garante apresentações sempre consistentes.

Vou apresentar 3 códigos nessa aula para que você saiba como fazer a criação de PPT com Python de forma automática.

Configurando o ambiente com a biblioteca python-pptx

Para realizar essa integração, você precisará da biblioteca python-pptx.

Instale-a com o comando:

Python
pip install python-pptx

Dica: consulte a documentação oficial do python-pptx para descobrir todos os recursos disponíveis, como layouts, formatações e gráficos avançados.

Criando seu primeiro slide com Python

Vamos começar criando um slide simples com título e subtítulo.

Python
from pptx import Presentation

apresentacao = Presentation()

# editar o ppt 
slide1 = apresentacao.slides.add_slide(apresentacao.slide_layouts[0]) # slide com titulo e subtitulo
# slide1 = apresentacao.slides.add_slide(apresentacao.slide_layouts[6]) # slide em branco

titulo = slide1.shapes.title 
subtitulo = slide1.placeholders[1]

titulo.text = "1º Slide do Lira"
subtitulo.text = "Tamo criando ppt com Python"

# salvar esse ppt
apresentacao.save("MeuPPT.pptx")

    Nesse primeiro código vamos importar a biblioteca, depois já vamos utilizar o Presentation() para criar a nossa apresentação.

    Feito isso vamos adicionar um slide com o comando .slides.add_slide. Dentro desse comando nós vamos poder escolher qual é o layout do slide que queremos.

    Aqui você pode seguir a ordem que eles aparecem dentro do seu PowerPoint.

    Layouts de slide
    Layouts de slide

    Lembrando que o índice começa no 0, então vamos da esquerda para a direita para aumentar esse índice.

    Então caso tenha alguma dúvida você pode testar no código ou pode consultar dentro do PowerPoint.

    Depois de adicionar os slides vamos poder inserir tanto o título quanto o subtítulo, mas veja que aqui ainda não estamos inserindo as informações dentro das caixas, estamos criando esses elementos.

    Nas linhas abaixo é que estamos inserindo os textos dentro desses dois elementos.

    Por fim nós vamos utilizar o comando .save para salvar a nossa apresentação no formato do PowerPoint.

    Integração Entre Python e PowerPoint
    Primeiro slide criado

    Aqui é o resultado do nosso primeiro slide. Aqui você nota que temos tanto o título quanto o subtítulo com os textos desejados.

    Criando slides personalizados com texto formatado

    Agora, vamos deixar nossos slides mais visuais, adicionando caixas de texto personalizadas com tamanhos e formatações específicas:

    Python
    from pptx import Presentation
    from pptx.util import Inches, Pt
    
    apresentacao = Presentation()
    
    # editar o ppt
    slide = apresentacao.slides.add_slide(apresentacao.slide_layouts[6])
    
    x = Inches(1)
    y = Inches(1)
    largura = Inches(2)
    altura = Inches(2)
    caixa_texto = slide.shapes.add_textbox(x, y, largura, altura)
    
    # 1 forma de editar uma caixa de texto
    caixa_texto.text = "Vendas de Janeiro"
    
    # 2 forma: criar parágrafos
    text_frame = caixa_texto.text_frame
    paragrafo = text_frame.add_paragraph()
    paragrafo.text = "R$10.000"
    paragrafo.font.bold = True
    paragrafo.font.size = Pt(30)
    
    paragrafo = text_frame.add_paragraph()
    paragrafo.text = "Produto mais vendido: IPhone"
    
    # salvar esse ppt
    apresentacao.save("MeuPPT2.pptx")

    Aqui além da biblioteca pptx nós vamos importar também o Inches e Pt da biblioteca pptx.util.

    Novamente temos os comandos para criar a apresentação e fazer a criação do slide (dessa vez utilizando o layout 6, que é o sétimo layout).

    Após a criação do layout do slide vamos definir alguns tamanhos em polegadas (inches) e depois vamos definir a nossa caixa de texto com essas medidas.

    Temos a definição tanto da posição dessa caixa em x e y quanto a largura e altura dessa caixa.

    Depois desse ajuste nós podemos inserir um texto com o comando .text. E podemos utilizar o comando .add_paragraph() para criar um parágrafo.

    Note que nesse exemplo fizemos a criação do frame, que nada mais é do que a nossa caixa de texto. Então dentro dela é que estamos fazendo a criação do parágrafo.

    Aqui você pode ir criando quantos parágrafos quiser dentro desse frame (caixa de texto). Além disso você pode fazer a formatação do seu texto, lembrando que essas informações estão na documentação da biblioteca.

    Então se quiser fazer alguma formatação diferente você pode consultar a documentação para verificar qual o comando pode utilizar!

    Por fim vamos salvar o slide e verificar como ele ficou!

    Integração Entre Python e PowerPoint
    Segundo slide criado

    Aqui você percebe que a nossa caixa de texto ficou posicionada na parte superior esquerda da página e ela possui 3 parágrafos.

    Isso quer dizer que você pode posicionar os elementos igual faz dentro do próprio PowerPoint e pode criar seus parágrafos para deixar suas informações mais visuais.

    Ícone PythonPython Impressionador

    Você vai aprender a linguagem de Programação que mais cresce no Mundo para fazer automações incríveis, desenvolver sites, fazer análises de dados, trabalhar com Ciência de Dados, Inteligência Artificial, mesmo que você nunca tenha tido nenhum contato com Programação na vida.

    Começar agoraSeta para a direita
    Fundo PythonTelas Python
    Luz Python

    Adicionando gráficos no PowerPoint via Python

    Agora, o passo mais interessante: gerar gráficos automáticos dentro do PowerPoint com Python.

    Python
    from pptx import Presentation
    from pptx.util import Inches, Pt
    from pptx.chart.data import CategoryChartData
    from pptx.enum.chart import XL_CHART_TYPE
    
    apresentacao = Presentation()
    
    slide = apresentacao.slides.add_slide(apresentacao.slide_layouts[6])
    
    # criar o nosso gráfico
    produtos = ["IPhone", "IPad", "Airpod"] # categorias (eixo x)
    vendas = [1500, 1000, 2000] # serie de dados (eixo y)
    
    x = Inches(1)
    y = Inches(1)
    largura = Inches(5)
    altura = Inches(3)
    
    dados_grafico = CategoryChartData()
    dados_grafico.categories = produtos
    dados_grafico.add_series("Vendas", vendas)
    # tipos de gráfico: https://python-pptx.readthedocs.io/en/latest/api/enum/XlChartType.html#xlcharttype
    slide.shapes.add_chart(XL_CHART_TYPE.COLUMN_CLUSTERED, x, y, largura, altura, dados_grafico)
    
    # salvar esse ppt
    apresentacao.save("MeuPPT3.pptx")

    Aqui você vai notar que estamos utilizando mais algumas bibliotecas para permitir a criação dos gráficos.

    Então vamos novamente criar a apresentação e em seguida criar o slide desejado.

    Feito isso vamos a criação do nosso gráfico. Vamos primeiro criar as informações de cada um dos eixos.

    Depois podemos ajustar a posição e o tamanho do gráfico, assim como fizemos com a caixa de texto.

    Por fim vamos fazer a criação do gráfico com as informações que já temos. Você vai notar que temos um site dentro do código.

    Esse site é para que você possa visualizar os tipos de gráficos que pode criar, então se quiser algum outro tipo pode dar uma olhada nessa documentação!

    Depois basta salvar a apresentação e abrir para ver como ficou!

    Terceiro slide criado (slide com gráfico)
    Terceiro slide criado (slide com gráfico)

    Outras aplicações práticas dessa integração

    Você pode ir além da simples criação de slides. Veja algumas ideias de automação possíveis:

    • Relatórios de vendas automáticos: Python coleta dados e gera apresentações mensais automaticamente.
    • Dashboards executivos: transforme análises de dados em slides prontos para reuniões.
    • Automação de status de projetos: gere slides atualizados a partir de planilhas ou bancos de dados.
    • Apresentações personalizadas para clientes: altere automaticamente logotipos, nomes e resultados.

    Conclusão: automatize suas apresentações

    Agora você aprendeu como integrar Python e PowerPoint para criar apresentações automáticas com textos, parágrafos e gráficos.

    Com esse conhecimento, é possível transformar relatórios em apresentações profissionais em poucos segundos, economizando tempo e deixando seu trabalho mais dinâmico e impressionador.

    Se quiser dominar de vez Python para automações, análise de dados e inteligência artificial, conheça o curso Python Impressionador da Hashtag Treinamentos e eleve seu nível técnico!

    Caso prefira esse conteúdo no formato de vídeo-aula, assista ao vídeo abaixo ou acesse o nosso canal do YouTube!

    O que você aprende neste vídeo

    Resposta rápida: A aula gera três apresentações com a python-pptx: uma com slide de layout pronto, de título e subtítulo; outra com slide em branco e caixa de texto com parágrafos; e uma com gráfico de colunas montado a partir de duas listas. É uma introdução: imagem e outros recursos ficam para a documentação.

    Neste vídeo (40 min):

    • 2:08 - No Jupyter, a instalação roda numa célula, com !pip install python-pptx; num editor como o VS Code, o comando vai no terminal, como pip install python-pptx.
    • 3:10 - Instala-se como python-pptx, mas no código a biblioteca é pptx, e dela a aula importa só um pedaço, o Presentation.
    • 4:59 - Criada a apresentação e salva com o nome do arquivo e a extensão, o arquivo gerado na pasta do código é um PowerPoint completamente vazio, sem nenhum slide.
    • 8:01 - Cada slide entra na lista de slides da apresentação com um layout tirado da lista de layouts de slide (no plural, alerta o instrutor), pelo índice, que começa do zero como nas listas do Python.
    • 10:00 - Com um slide de cada layout, do índice 0 ao 8, saem nove slides: no PowerPoint do instrutor, o 0 tem título e subtítulo, o 1 tem título e um campo de texto, e o slide em branco, o sétimo, é o índice 6.
    • 12:24 - No slide de título e subtítulo, os placeholders, caixas à espera de conteúdo, dão acesso aos dois (o de índice 0 é o título, e o de índice 1, o subtítulo), e o texto entra pelo .text.
    • 19:36 - Num slide em branco, a caixa de texto entra nos shapes com x, y, largura e altura: x e y são as distâncias horizontal e vertical a partir do canto de cima do slide.
    • 24:30 - Atribuir outro texto à caixa substitui o anterior; para ter vários parágrafos, a opção preferida do instrutor é adicionar cada um pelo text frame da caixa.
    • 29:07 - Com o arquivo fechado, a rodada mostra o parágrafo do valor de vendas em tamanho 30, maior até do que a caixa de texto, o que o instrutor diz não ser problema.
    • 30:53 - Para o gráfico de colunas, duas listas: as categorias, que vão no eixo X, com os produtos (iPhone, iPad e AirPods), e a série de dados, no eixo Y, com a quantidade vendida de cada um (1.500, 1.000 e 2.000).
    • 36:04 - O gráfico entra nos shapes do slide com o tipo, x, y, largura, altura e os dados, nessa ordem; o tipo, tirado da lista da documentação, é o gráfico de colunas padrão do Office.
    • 38:36 - Rodado o código, o terceiro arquivo traz o slide com o gráfico; título, rótulos de dados e outros detalhes ainda dá para editar.

    Trechos do vídeo:

    • A python-pptx tem um funcionamento muito específico, e o instrutor não recomenda decorá-la: o caminho é manter o código e a cartilha salvos para consulta e deixar a documentação aberta, que tem exemplos de texto, gráfico e tabela.
    • Na python-pptx, todo elemento entra cru e só depois é editado: primeiro se adiciona o slide, a caixa de texto ou o parágrafo, e depois se mexe no texto e na formatação. E a apresentação criada pelo código parte do zero, sem o slide e o modelo com que o PowerPoint abre normalmente.
    • Enquanto o código edita a apresentação, o arquivo precisa estar fechado: aberto no PowerPoint, a execução dá erro de permissão.
    • O módulo das unidades de medida é o pptx.util, no singular: com o nome no plural, o código dá erro. Dele a aula importa as polegadas, usadas na posição e no tamanho da caixa de texto e do gráfico, e a unidade do tamanho da fonte.
    • Montar o PowerPoint por código dá muito mais trabalho do que à mão, mas o código fica pronto: com informações dinâmicas, como as vendas do mês no título ou dados vindos de um banco de dados ou de uma análise, basta rodar de novo para ter a apresentação atualizada.

    FAQ - Perguntas Frequentes

    1. É possível criar apresentações do PowerPoint automaticamente com Python?

    Sim! Com a biblioteca python-pptx, você consegue gerar apresentações inteiras no PowerPoint via código Python. Dá para criar slides, inserir textos, imagens e até gráficos, tudo de forma automatizada — ideal para relatórios, dashboards e apresentações dinâmicas.

    2. Como instalar a biblioteca python-pptx no meu computador?

    Basta abrir o terminal e executar o comando: pip install python-pptx
    Essa biblioteca é leve e gratuita. Depois de instalada, você já pode importar com from pptx import Presentation e começar a criar slides automaticamente.

    3. Quais tipos de conteúdo posso adicionar aos slides com Python?

    Você pode adicionar títulos, subtítulos, caixas de texto, imagens, formas e gráficos diretamente pelo código. Além disso, é possível formatar textos (negrito, cor, tamanho da fonte) e posicionar elementos de forma precisa nos slides.

    4. Dá para gerar gráficos automaticamente no PowerPoint usando Python?

    Sim! A biblioteca python-pptx permite criar vários tipos de gráficos, como colunas, barras, pizza e linhas. Basta usar a classe CategoryChartData() e o método add_chart() para gerar gráficos baseados em listas de dados, igual mostramos no exemplo do artigo.

    5. Quais as principais vantagens de integrar Python e PowerPoint?

    As principais vantagens são agilidade, automação e padronização. Você economiza tempo na criação de apresentações, evita erros manuais e pode atualizar relatórios automaticamente com novos dados — perfeito para quem trabalha com análise de dados, vendas e ciência de dados.

    Hashtag Treinamentos

    Para acessar outras publicações de Python, clique aqui!


    Quer aprender mais sobre Python com um minicurso básico gratuito?

    Posts mais recentes de Python

    Posts mais recentes da Hashtag Treinamentos