Claude Code と PowerPoint|テンプレ+スクリプトでスライド土台(python-pptx等)
目次 クリックで開く
Claude Codeとpython-pptxでPowerPoint作成を完全自動化!実務で使えるスクリプト生成と運用設計ガイド
毎月の定例報告や提案書の土台作りに、いまだにExcelからの「コピー&ペースト」を繰り返していませんか?本記事では、AnthropicのCLIエージェント「Claude Code」とPythonライブラリ「python-pptx」を駆使し、社内ルールに準拠したスライド生成を完全自動化する実践的ワークフローを解説します。
なお、データの流し込みだけでなく、スライドの情報設計やレイアウトの芯を社内ルールに沿わせたい場合は、ブランドガイドや「文章→図解」の変換ルールをドキュメント化し、Claude のプロジェクトや Skills として持たせると再現性が高まります。以下ではまず python-pptx 周りの実装を中心に整理し、そのあとでコンテキスト設計の補助線にも触れます。
1. なぜ「VBA」ではなく「Python × Claude Code」なのか?
ビジネスの現場において、PowerPoint(パワーポイント)による資料作成は避けて通れないタスクです。従来、この自動化といえばVBA(Visual Basic for Applications)が主流でした。しかし、現代のデータスタックやAIツールとの親和性を考えると、「PythonとAIエージェントの組み合わせ」が圧倒的に優位です。
手作業の撲滅とデータソースとの直接連携
数値データやグラフをExcelからPowerPointへ手動で貼り付ける作業は、非効率なだけでなくヒューマンエラーの温床です。python-pptxを使用すれば、SaaSからエクスポートしたCSVやデータベースから直接データを読み込み、スライドを生成できます。「フォーマットは同じで、中身の数値だけが毎月変わるレポート」において、その威力は絶大です。
AIエージェント(Claude Code)による「対話型開発」の衝撃
Claude Codeは、ターミナル上で動作するAIエージェントです。ローカルのファイル構成を理解し、実際にPythonスクリプトを生成・実行・修正しながらプログラムを組み上げてくれます。「チャットAIにコードを書いてもらい、それを手元にコピペして動かす」という従来の手間がなくなり、対話するだけで複雑な自動化スクリプトが完成します。
👉 Excelと紙の限界を突破する「Google Workspace × AppSheet」業務DX完全ガイド
2. 開発環境のセットアップと基本ツールの導入
まずは、自動化の基盤となる環境を構築します。※Claude Codeの提供形態や認証方法はアップデートが早いため、利用開始時は必ずAnthropicの公式ドキュメントを確認してください。
Claude Codeのインストール
Claude CodeはNode.js環境で動作します。以下の手順でセットアップを行います。
- Node.jsの確認: Node.js 18以上がインストールされていることを確認します。
- インストール: ターミナルで
npm install -g @anthropic-ai/claude-codeを実行します。 - 認証: ターミナルで
claudeコマンドを実行し、ブラウザ経由でAnthropicアカウントの認証を完了させます。
Python環境とpython-pptxの導入
スライド操作の核となるオープンソースライブラリをインストールします。
pip install python-pptx pandas matplotlib
データ集計用にpandas、グラフ画像生成用にmatplotlib(またはseaborn)も併せて導入しておくのが実務的なセオリーです。
3. 【重要】Claude Codeに「社内ルール」を理解させるコンテキスト設計
Pythonコードを書かせる前に、極めて重要なステップがあります。それは「生成するスライドのデザインルールや情報をAIにどう理解させるか」という設計です。

現場では「毎回長いプロンプトを打つのが面倒になり、結果的にデザインがブレる」という課題がよく発生します。これを防ぐために、Claude CodeではプロジェクトのルートディレクトリにCLAUDE.md(プロジェクト固有の指示書)を配置し、ブランドガイドラインや文章から図解への変換ルールを定義します。
MCP(Model Context Protocol)を用いて外部データソースに接続し、ドキュメントに記載された作法に従ってClaude CodeにPythonコードを書かせる。この連携が、高度な自動化のベースとなります。

4. 実践:Claude Codeを用いたスライド生成のワークフロー
社内ルールをコンテキストに載せる(Projects / Skills と MCP)
本記事の主眼は python-pptx による実装ですが、現場では「毎回長いプロンプトを打つ」運用が続かず、ブランドや図解の型がブレてしまうことがよくあります。Anthropic の Claude では、プロジェクトにドキュメントを置き続けることで前提を固定したり、Skills に手順やドメイン知識をパッケージ化して再利用したりできます。ここを押さえておくと、以降のスクリプト生成指示が安定し、テンプレートの意図とも噛み合いやすくなります。

Claude(Anthropic)は、AI の安全性と実務品質の両立を掲げる企業で、Claude Code はローカルのファイルやコマンド実行と組み合わせて開発・自動化を進めるためのエージェントです。「文章の要約」だけでなく、レイアウト方針や禁止事項をドキュメントとして持たせる発想が、資料の再現性に効きます。


当社では、ブランドガイドやレイアウトの型、文章から図解への変換ルールなどを Skills 側にまとめ、議事録やたたき台のテキストから .pptx の設計に落とし込む運用を組み合わせています。短いクリップで雰囲気を掴みたい方は、以下をご覧ください。
トーク形式で全体像を追いたい場合は、当社が配信している同一テーマの解説動画とあわせてご覧ください。(チャンネルURLは配信更新に合わせてコーポレートサイトからご確認ください。)以下では引き続き、python-pptx を中心に手を動かす流れを整理します。
それでは、具体的にClaude Codeを使ってスライドを作成する手順を見ていきましょう。単にコードを書かせるだけでなく、構造から設計させるのがポイントです。
ステップ1:スライド構成案(Markdown)の作成
まずはClaude Codeに対し、どのようなプレゼンテーションを作りたいか、アウトラインを定義させます。ターミナルで claude を起動し、以下のように指示します。
「新製品の四半期販売報告を行うスライドの構成案をMarkdown形式で作成してください。スライドは全5枚、表とグラフを1つずつ含む構成にしてください。」
ステップ2:python-pptxスクリプトの自動生成
構成案に合意したら、次にその内容を具体的に実装するPythonコードを生成させます。
「作成した構成案に基づき、python-pptxを使用してスライドファイルを生成するPythonスクリプト
generate_slides.pyを作成してください。サンプルデータとして、pandasで生成したダミーの販売数値を使用してください。」
Claude Codeは現在のディレクトリ構成を確認し、必要なインポート文からオブジェクトの配置までを一貫して記述してくれます。もし実行してエラーが出た場合でも、「このエラーが出たので直して」とそのままチャットで指示するだけで、コードが自動修正されます。
ステップ3:社内テンプレート(.pptx)ファイルの活用
白紙のスライドから作成するとデザインが味気なくなります。実務では、社内のロゴやフォント設定が含まれたテンプレートファイル(master.pptx)を読み込み、その「スライドマスター」を利用するように指示するのが正解です。
from pptx import Presentation
# テンプレートの読み込み(社内の master.pptx など)
prs = Presentation("template.pptx")
# レイアウトはテンプレートごとに番号が異なるため、指定に注意
slide_layout = prs.slide_layouts[1] # 例: タイトルとコンテンツレイアウト
slide = prs.slides.add_slide(slide_layout)
Claude Codeに対し、「既存の template.pptx のレイアウトを読み込み、プレースホルダー番号を確認しながらテキストを流し込むスクリプトに書き換えて」と命令することで、デザイン性を担保した自動生成が可能になります。
▼ 実際に生成されたスライドをPowerPointでプレビューした様子
5. 導入前に知っておくべき「python-pptx」の技術的制約
実務で運用するにあたり、いきなり全ての資料を自動化しようとすると、設計の複雑化により挫折しやすくなります。python-pptxの仕様と限界を理解しておくことが重要です。
| 機能・項目 | 対応状況とAurantの推奨対策 |
|---|---|
| レイアウトとプレースホルダー | スライド追加時は、テンプレート側のレイアウト番号(slide_layouts[n])と枠のIDを正確に指定する必要があります。最初にClaude Codeへ「全プレースホルダーのIDを出力するデバッグ用スクリプト」を作らせるのが確実です。 |
| 既存グラフデータの更新 | 困難です。Excelのグラフオブジェクトの値を直接書き換えるより、Python(matplotlib等)で生成したグラフ画像を新規に貼り付ける運用を推奨します。 |
| SmartArtの操作 / アニメーション | 非対応。高度なアニメーションの付与やSmartArtの動的生成はできません。図解はテンプレート側に静的に配置しておくか、手動での最終調整を前提としてください。 |
SFA・CRMなどから構造化データを取り出せること(参照記事)。そして、月次報告書のように「レイアウトが固定されていること」が条件です。クリエイティビティが求められる新規の企画書などは、Canva等のAIデザインツールの領域となります。SaaSの適材適所の見極めについてはSaaSコスト削減とツール選定の現実的アプローチもご参照ください。
6. まとめ:AIエージェントを前提としたドキュメント作成の未来
Claude Codeとpython-pptxの組み合わせは、単なる「効率化ツール」に留まりません。人間がデザインルールや論理構成などの「上位レイヤーの設計」に集中し、退屈な実装や微調整をAIエージェントに委ねるという、新しい働き方のプロトタイプです。
セキュリティ面においても、Claude Codeに不要な個人情報や機密データを読み込ませないよう、.claudeignore ファイルを適切に設定するなどの運用設計が不可欠です。まずは、最も頻度の高い定型的なプロジェクト進捗報告の自動化から着手し、AIエージェントによる開発体験の威力を実感してみてください。
AIエージェントを活用した業務自動化のご相談
本記事で紹介したPythonによる自動化スクリプトの内製化支援や、SaaSデータとの連携、AIエージェント運用に向けたコンテキスト設計(ルール策定)にご興味がある方は、Aurant Technologiesまでお気軽にご相談ください。