python で Powerpoint を操作する

PythonでPowerPointを操作するには、主に次の2つのライブラリがあります:


目次

✅ よく使われるライブラリ

1. python-pptx(おすすめ)

  • PowerPointファイル(.pptx)を新規作成・編集・保存できる。
  • Windows / Mac / Linux で動作。
  • COMを使わないため、PowerPointのインストールは不要。

インストール方法:

pip install python-pptx

基本サンプル:スライド1枚、タイトルと本文を追加

from pptx import Presentation

# 新しいプレゼンテーションを作成
prs = Presentation()

# タイトルスライドを追加
slide_layout = prs.slide_layouts[0]  # タイトルスライドレイアウト
slide = prs.slides.add_slide(slide_layout)

# タイトルとサブタイトルを設定
slide.shapes.title.text = "こんにちは、PowerPoint!"
slide.placeholders[1].text = "Pythonから生成しました"

# 保存
prs.save("sample.pptx")

2. pywin32(Windows限定・PowerPointが必要)

  • Windows + Officeがインストールされた環境で、PowerPointアプリケーション自体を操作できる(VBAに近い)。
  • スライドショー実行やアニメーションなども可能。

インストール方法:

pip install pywin32

基本サンプル:PowerPointを起動して既存ファイルを開く

import win32com.client

# PowerPointアプリを起動
ppt_app = win32com.client.Dispatch("PowerPoint.Application")
ppt_app.Visible = True

# プレゼンテーションを新規作成
presentation = ppt_app.Presentations.Add()

# スライドを追加(1=ppLayoutText)
slide = presentation.Slides.Add(1, 1)
slide.Shapes[0].TextFrame.TextRange.Text = "Pythonから制御"
slide.Shapes[1].TextFrame.TextRange.Text = "PowerPoint COM API"

# 保存(ファイルパスに注意)
presentation.SaveAs(r"C:\Users\YourName\Desktop\com_test.pptx")

用途別おすすめ

用途ライブラリ備考
新規ファイル作成と編集python-pptxクロスプラットフォーム。最も一般的。
既存のPowerPointでスライドショーpywin32アニメーション・実行操作が可能(Windowsのみ)
テンプレートから生成python-pptx.pptx テンプレートからの操作が可能

よかったらシェアしてね!
目次