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.
O que você vai aprender?
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:
pip install python-pptxDica: 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.
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.

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.

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:
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!

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.
Adicionando gráficos no PowerPoint via Python
Agora, o passo mais interessante: gerar gráficos automáticos dentro do PowerPoint com 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!

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, comopip 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, oPresentation. - 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
shapescom 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
shapesdo 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-pptxtem 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!
Posts mais recentes de Python
- Curso Básico de Python: Saia do Zero em 10 Aulas GrátisAprenda com o curso básico de Python gratuito da Hashtag: 10 aulas práticas, exercícios e projetos reais para sair do zero em programação.
- Agentes RAG com Python: como criar um assistente de IAAprenda a criar Agentes RAG com Python do zero: LangChain, FAISS e OpenAI para montar um assistente de IA que responde com base nos seus documentos.
- 25 Tipos de Gráficos em Python: Guia Completo com CódigoAprenda a criar os principais tipos de gráficos em Python com Plotly: barras, pizza, mapas e mais, com código pronto para copiar e usar.
Posts mais recentes da Hashtag Treinamentos
- Planilha de Controle de Notas Fiscais no Excel [Grátis]Baixe a planilha de controle de notas fiscais no Excel grátis: calcule ISS e retenções, veja o que está em aberto e gere a cobrança de cada nota de serviço.
- Qual IA usar na empresa: ChatGPT, Claude ou Perplexity?Qual IA usar na empresa: veja as diferenças entre ChatGPT, Claude e Perplexity e quando cada um rende mais em cada área da sua equipe.
- Apostilas Gratuitas em PDF: Excel, Power BI, Python e IABaixe apostilas gratuitas em PDF de Excel, Power BI, Python, Claude e agentes de IA, com exercícios e gabarito. Escolha a sua e comece hoje.








