M365 Copilotで「自社スタイルPPT」を自動生成する方法

はじめに
今回紹介するのは、Claude Opus 4.5 と M365 Copilot を組み合わせて、自社スタイルのPowerPointを自動生成する方法です。
上記PVはGemini3 Proで製作
きっかけ:まつにぃさんのNote記事
この方法を思いついたきっかけは、まつにぃさんが投稿された以下のNote記事です。
python-pptx ライブラリだけを使ってPowerPointを生成するPythonスクリプトが紹介されています。特に興味を引いたのがこの部分:
このPythonスクリプトの強みは、ChatGPTやClaudeにスライド内容の編集から作成までをお願いできることにあります。Code Interpreter や Artifacts 環境でそのまま動くので、会話しながらスライドを仕上げていけます。
これを読んで思ったんです。
「このPythonコードを自社デザイン風に改修するところ、Claude Opus 4.5なら結構いい感じにやってくれるんじゃない?」
「ついでに、そのPythonファイルをM365-copilotに添付してPPT生成依頼したら作ってくれるんじゃない?」
実現したこと
結論から言うと、以下のことができました:
- Claude Opus 4.5 で、既存のPythonコードを自社デザイン仕様に改修
- M365 Copilot(GPT-5モードON) に改修済みPythonファイルを添付してPPT作成依頼
- ダウンロードリンク付きでPPTXが自動生成される
マジで感動しました。
▲ 実際に生成されたパワポ


そのうち、このレベル(いや、これ以上の)のアウトプットが誰でももっと簡単に生成できるようになるんでしょうね。
M365 CopilotでPython実行できるのがポイント
ここがポイントなんですが、M365 Copilot(GPT-5モードON)では、Pythonファイルを添付して「このPythonコード実行して」ってやると、ローカルPCにPython環境がなくても実行できちゃうんですよね。
今までにないAI時代の活用法って感じがします。
手順解説
Step 1: Claude Opus 4.5で自社スタイルのPythonコードに改修
まつにぃさんの記事で紹介されているPythonスクリプトをベースに、自社のデザインガイドラインに合わせた改修をClaudeに依頼します。
依頼方法はケースバイケースなので省略しますが、今回は、以下のような30種類のチャートに対応したPythonコードに改修してみました。
Accenture Style PPTX Generator テンプレート一覧(全30種)
Accenture Style PPTX Generator テンプレート一覧(全30種)
概要
| 項目 | 内容 |
|---|---|
| フォント | Meiryo UI |
| タイトルサイズ | 36pt |
| 本文サイズ | 18-20pt |
| スライドサイズ | 13.333" × 7.5"(16:9) |
| メインカラー | #A100FF(パープル) |
■ 表紙・クロージング(2種)
| ID | テンプレート名 | 必要データ | 説明 |
|---|---|---|---|
| 1 | 表紙 |
title, subtitle, credit
|
パープル背景、中央に「>」シンボル |
| 30 | クロージング |
title, subtitle, credit
|
パープル背景、Thank You用 |
■ 構成・区切り(2種)
| ID | テンプレート名 | 必要データ | 説明 |
|---|---|---|---|
| 2 | アジェンダ |
title, subtitle, items[]
|
番号付きリスト形式の目次 |
| 3 | セクション区切り |
title, subtitle, section_number
|
ダークパープル背景、大きなセクション番号 |
■ 定性チャート(14種)
| ID | テンプレート名 | 必要データ | 説明 |
|---|---|---|---|
| 4 | ボックスチャート | items[] |
4つのボックスで特徴・要素を表示 |
| 5 | 箇条書き | items[] |
シンプルな箇条書きリスト |
| 6 | ロードマップ | timeline_items[] |
横軸タイムラインでフェーズ表示 |
| 7 | ステップチャート | steps[] |
矢印で繋がったプロセスフロー |
| 8 | ビジネスモデル | model_items[] |
Canvas形式のビジネスモデル図 |
| 9 | 評価表 |
categories, eval_items[]
|
複数項目の評価マトリクス(●表示) |
| 10 | マトリクス | matrix_data |
2軸マトリクス(BCGマトリクス等) |
| 11 | ロジックツリー | tree_data |
階層構造の課題分解図 |
| 12 | ピラミッド |
pyramid_items[], descriptions
|
階層ピラミッド図 |
| 13 | インタビュー | interview_data |
顧客の声・インタビュー引用 |
| 14 | レイヤー | layer_items[] |
積み重ね構造(アーキテクチャ等) |
| 15 | 事例紹介 | case_data |
課題→ソリューション→効果 |
| 16 | カレンダー | calendar_data |
月間カレンダーとイベント表示 |
| 17 | 自由描画(3カラム) | items[] |
3列レイアウトの自由形式 |
■ 定量チャート(8種)
| ID | テンプレート名 | 必要データ | 説明 |
|---|---|---|---|
| 18 | 単一積み上げ縦棒 |
stacked_single_data, text_items[]
|
1本の積み上げ棒グラフ |
| 19 | 積み上げ縦棒 |
stacked_column_data, text_items[]
|
複数カテゴリの積み上げ縦棒 |
| 20 | 積み上げ横棒 |
stacked_bar_data, text_items[]
|
複数カテゴリの積み上げ横棒 |
| 21 | 折れ線グラフ |
line_data, text_items[]
|
時系列トレンド表示 |
| 22 | ヒストグラム |
histogram_data, text_items[]
|
分布・頻度表示 |
| 23 | 散布図 |
scatter_data, text_items[]
|
2変数の相関表示 |
| 24 | バブルチャート |
bubble_data, text_items[]
|
3変数(X, Y, サイズ)表示 |
| 25 | コンボチャート |
combo_data, text_items[]
|
縦棒+折れ線の複合グラフ |
■ その他(4種)
| ID | テンプレート名 | 必要データ | 説明 |
|---|---|---|---|
| 26 | テーブル+インサイト |
table_data, text_items[]
|
表形式データと右側に要点 |
| 27 | 統計 | stats[] |
大きな数字で指標を強調表示 |
| 28 | キーメッセージ |
message, sub_message
|
中央に大きなメッセージ表示 |
| 29 | 2カラム |
left_header, left_items[], right_header, right_items[]
|
左右2列の比較・対比レイアウト |
カラーパレット
| 色名 | カラーコード | 用途 |
|---|---|---|
| PURPLE | #A100FF | メインカラー |
| PURPLE_DEEP | #7500C0 | セカンダリ |
| PURPLE_DARK | #460073 | セクション背景 |
| PURPLE_LIGHT | #BE82FF | アクセント |
| PURPLE_PALE | #DCAFFF | 薄いアクセント |
使用例
SLIDE_CONTENT = {
1: {
"title": "プレゼンテーションタイトル",
"subtitle": "サブタイトル",
"credit": "会社名 | 日付"
},
4: {
"title": "4つの特徴",
"items": [
"特徴1\n詳細説明",
"特徴2\n詳細説明",
"特徴3\n詳細説明",
"特徴4\n詳細説明"
]
}
}
Step 2: M365 Copilotにプロンプトを投げる
改修したPythonファイル(ppt_generator.py)をM365 Copilotに添付して、以下のプロンプトを投げます。
添付したPythonスクリプト(ppt_generator.py)を使って、#CONTENTSの内容からプレゼン資料を作成してください。
## 作成ルール
### スライド構成
- 1スライド1メッセージの原則を守る
- 表紙 → アジェンダ → 本編 → まとめ/クロージング の流れで構成
- 内容に最適なテンプレートを選択(全テンプレートを使う必要はない)
- 情報量が多い場合は無理に詰め込まず、スライドを分割する
### 文字サイズ・レイアウト調整
情報量に応じてテンプレート関数内を調整:
- 項目数が多い/テキストが長い → 文字サイズを小さく(最小 Pt(10)まで)
- 項目数が少ない/テキストが短い → 標準サイズのまま
- 枠幅に対して文字が多い場合 → 適切な位置で改行(`\n`)を入れる、または枠の幅・高さを調整
- ボックスやノードからテキストがはみ出す場合 → 枠サイズを拡大するか、文字サイズを縮小
### 修正箇所
`SLIDES_TO_USE` と `SLIDE_CONTENT` を #CONTENTS の内容に合わせて書き換える。
必要に応じてテンプレート関数内の文字サイズや枠サイズも調整する。
## 実行手順
1. ppt_generator.py の `SLIDES_TO_USE` と `SLIDE_CONTENT` を修正
2. 修正した ppt_generator.py を実行してPPTXを生成
3. 完成したPPTXのダウンロードリンクを提供
---
# CONTENTS
{ここにスライドにしたい内容を記載}
Step 3: Copilotが自動でPPTを生成
プロンプトを送信すると、Copilotが:
- Pythonコード内の
SLIDES_TO_USEとSLIDE_CONTENTを書き換え - 修正したコードを実行
- 完成したPPTXのダウンロードリンクを提供
まで、自動処理してくれます。

▲ Copilotがコードを実行し、ダウンロードリンクを提示
生成されたスライドの例1
以下の架空のプロジェクト情報を元にPPTを自動生成してみました。
架空のプロジェクト情報のメモ書き
【案件名】大手製造業A社 基幹システム刷新プロジェクト
■背景・課題(ヒアリングメモ)
・現行システムは2008年導入、もう16年使ってる
・ベンダーサポート2026年3月で終了、やばい
・ERPはSAP ECC6.0、S/4HANAへの移行必須
・現場からの不満多い:画面遷移多すぎ、入力項目多すぎ、レスポンス遅い
・部門ごとにExcel管理が乱立、データ二重入力が常態化
・月次決算に10営業日かかってる→5日に短縮したい
・海外子会社(タイ、ベトナム、中国)との連携がFAXとメールベース
・属人化がひどい、田中さんが休むと受注処理が止まる
・経営層からDX推進のプレッシャー、次の中計の目玉にしたい
■プロジェクト目的
・基幹システムの刷新(SAP S/4HANA Cloud移行)
・業務プロセスの標準化・効率化
・データドリブン経営の基盤構築
・グローバル拠点との情報連携強化
■スコープ
対象業務:販売管理、購買管理、在庫管理、生産管理、会計(FI/CO)
対象拠点:本社+国内3工場+海外3拠点
ユーザー数:約800名(本社400、工場200、海外200)
対象外:人事給与(別途検討)、PLM(既存継続)
■概算スケジュール
フェーズ1:要件定義・Fit&Gap(2025年1月〜6月)6ヶ月
フェーズ2:設計・開発(2025年7月〜2026年6月)12ヶ月
フェーズ3:テスト・移行(2026年7月〜12月)6ヶ月
本番稼働:2027年1月予定
→全体24ヶ月、けっこうタイト
■プロジェクト体制図
【ステアリングコミッティ】
A社:代表取締役社長 鈴木、取締役CFO 高橋、取締役CIO 伊藤
弊社:マネジング・ディレクター 中村
↓
【PMO】
A社側PM:情報システム部長 山本(2025年3月定年→後任 木村課長)
弊社側PM:シニアマネージャー 田村
PMOメンバー:渡辺、小林、加藤(弊社)、中島、森(A社)
↓
┌──────────┬──────────┬──────────┬──────────┬──────────┐
↓ ↓ ↓ ↓ ↓
【SD/MM】 【PP】 【FI/CO】 【Basis/IF】【変革管理】
販売・購買 生産管理 会計 技術基盤 チェンジマネジメント
リーダー: リーダー: リーダー: リーダー: リーダー:
弊社 佐々木 弊社 原田 弊社 藤井 弊社 石川 弊社 松本
A社 吉田 A社 斎藤 A社 池田 A社 清水 A社 坂本
メンバー8名 メンバー5名 メンバー7名 メンバー5名 メンバー3名
(弊社5 (弊社3 (弊社4 (弊社3 (弊社2
+パートナー3) +パートナー2) +パートナー3) +パートナー2) +A社1)
【海外拠点担当】
タイ工場:現地PM ソムチャイ+弊社 山下
ベトナム工場:現地PM グエン+弊社 岡田
中国工場:現地PM 王+弊社 井上 ※非協力的、要注意
【キーユーザー(兼務)】各部門から計30名選出予定
営業部:5名、製造部:8名、購買部:4名、経理部:5名、
物流部:4名、品質管理部:2名、海外事業部:2名
■概算予算
SI費用:12〜15億円
ライセンス:年間1.5億円(RISE with SAP)
インフラ:クラウド移行込みで初期2億、ランニング年5000万
PMO・変革管理:2億円
合計:18〜22億円くらい? 要精査
■リスク・懸念事項
・アドオン数が300本以上ある、Fit to Standardどこまでできるか
・海外拠点のキーマンが非協力的(特に中国の王さん、何度メールしても返信遅い)
・現場の抵抗感強い、「今のやり方変えたくない」製造部の斎藤課長が難敵
・情シス部長 山本さんが来年3月定年、引き継ぎ大丈夫か→木村課長を早期アサイン必須
・2026年問題でSAPコンサル市場逼迫、リソース確保できるか
・データ移行、マスタ統合が鬼門(顧客マスタ10万件、品目50万件、仕入先2万件)
・A社の社内政治:営業部vs製造部の対立、どっちの要件を優先するか揉めそう
■期待効果(KPI案)
・月次決算:10日→5日
・受注〜出荷リードタイム:3日→1日
・在庫回転率:6回→8回
・手作業時間:年間2万時間削減
・Excel管理ファイル:500個→50個以下
・ペーパーレス化:年間100万枚削減
・システム運用コスト:年間3000万円削減
■主要マイルストーン
2025/1/15 キックオフ
2025/2/28 AS-IS業務フロー完成
2025/4/30 Fit&Gap完了、Gap一覧確定
2025/6/30 要件定義書承認(フェーズ1完了)
2025/10/31 基本設計完了
2026/3/31 開発完了
2026/6/30 結合テスト完了(フェーズ2完了)
2026/9/30 UAT完了
2026/11/30 データ移行リハーサル完了
2026/12/31 本番移行準備完了(フェーズ3完了)
2027/1/4 本番稼働!!
■次のアクション
・11/15 キックオフMTG@A社本社8F大会議室
・11月中にAS-IS業務フロー作成(各機能チームで分担)
・12月にFit&Gapワークショップ(5日間×3回、12/2〜、12/9〜、12/16〜)
・年内に概算見積もりv2提出
・木村課長との引き継ぎ計画策定(山本部長と要相談)
・海外拠点訪問スケジュール調整(1月にタイ・ベトナム、2月に中国)
担当:山田、佐藤
更新日:2024/11/8
以下が自動生成された全29枚のスライドです。
生成された全29枚のスライド





























生成されたスライドの例2
以下のような架空のAIツール利用実績ファイル(AIツール利用実績.xlsx)をCopilotに分析させ、その分析結果を元にPPTを自動生成してみました。
架空のAIツール利用実績ファイル

以下が自動生成された全12枚のスライドです。
Excelデータの内容を分析して、分析結果をグラフ化するところまでちゃんとスライド化出来ていてすごー!!って感じですね。
生成された全12枚のスライド












注意点
M365 Copilotチャットに依頼しても、添付したPythonコードを実行してPPTを出してくれない場合がたまにあります(デザインが自社スタイルじゃないPPTが出てくるなど)。
その場合は、再度「添付したPythonコードを要件に合うように修正して、そのPythonコードを実行して」のように依頼するとちゃんと出してくれたりします。
ダウンロードリンクも出してくれない場合があるので、再依頼すると出してくれたりします。動作が若干安定しない場合もある点は注意です。
ぜひ試してみてください。
Discussion