IT部門の体制図作成を Claude Code で自動化、毎回30分を3分に圧縮した事例
SIerのPLが、メンバー追加のたびに手動更新していたExcel体制図を Claude Code で完全自動化。Python → VBScript → Excel VBA の三層構成でゼロコード運用を実現した実例を解説。
TL;DR
- SIerのプロジェクトリーダーが、メンバー追加・異動のたびに30〜60分かけていた Excel 体制図の手動更新を Claude Code で3分に短縮
- メンバー台帳(Excel)に名前・所属・役割を追記するだけで体制図が自動完成
- Python → VBScript → Excel VBA の三層スクリプトを Claude Code が自動生成・保守
Before:手作業のフロー
50名規模のプロジェクトでは、メンバーの参画・離脱・役割変更が月に数回発生する。そのたびにプロジェクトリーダーは以下の作業を手動で繰り返していた。
- メンバー変更連絡を受領(メール・Slack・口頭)
- Excel を開いて図形を手動配置
- 追加メンバーの四角形ボックスを追加
- グループ(チーム)ごとに色分け
- 線の接続をやり直す
- 上位メンバーとの指揮系統線を引き直す
- 既存の線が崩れていないか全体確認
- レイアウトを再調整
- ボックスが重ならないように手動で位置調整
- 印刷範囲に収まるようにページ設定
- ファイル保存・関係者に再送付
この作業が毎回 30〜60分かかっており、月に3〜5回発生するため、月間工数は最大 5時間を超えていた。「設計や課題解決に集中すべき時間が、体制図の整形作業に消えていく」という典型的な非付加価値業務だ。
After:Claude Code 導入後のフロー
Claude Code 導入後のフローはシンプルに3ステップに集約された。
- メンバー台帳(Excel)を更新する
members.xlsxの所定列(名前・チーム・役割・参画日)に1行追記するだけ
- Claude Code に一行指示を出す
claude -p "体制図を最新のメンバー台帳に合わせて更新して" - 3分後に完成した体制図を確認・共有
taiseizu.xlsxが自動更新されて保存される- Slack に自動投稿される(Hook 設定後)
メンバー構成の変更連絡を受けてから共有完了まで、人間が使う時間は 台帳への1行入力だけ。
実装ステップ(コピペで動く)
1. CLAUDE.md の準備
プロジェクトルート直下に CLAUDE.md を作成し、台帳と体制図ファイルのパス、生成ルールを記述する。
# 体制図自動生成エージェント
## 役割
members.xlsx のメンバー台帳を読み取り、taiseizu.xlsx の Excel 体制図を自動更新する。
## ファイル構成
- `data/members.xlsx` — メンバー台帳(列: 名前, チーム, 役割, 参画日, 離脱日)
- `output/taiseizu.xlsx` — 体制図(このファイルを上書き更新する)
## 生成ルール
1. 離脱日が空欄のメンバーのみ表示する
2. チーム列でグループ化し、チームごとに色分けする(チームA=青, チームB=緑, ...)
3. PM・PLは上位に配置し、指揮系統の矢印を引く
4. 全ボックスがA3横向き1枚に収まるようにレイアウトする
5. 生成後は output/taiseizu.xlsx に上書き保存する
## 使用ツール
Python (openpyxl) でデータ読み取り → VBScript で Excel COM 操作 → VBA モジュールで図形描画
日本語リテラルは ChrW() で Unicode コードポイント表記に変換すること(文字化け防止)
2. Subagent の作成
.claude/agents/taiseizu-updater.md を作成し、体制図更新に特化したサブエージェントを定義する。
---
name: taiseizu-updater
model: claude-haiku-4-5
description: メンバー台帳の変更を検知して Excel 体制図を更新するサブエージェント
---
## ミッション
data/members.xlsx を読み取り、output/taiseizu.xlsx を最新状態に更新する。
## 実行手順
1. openpyxl で members.xlsx を読み込み、離脱日が空のレコードを抽出
2. チームごとにメンバーをグループ化
3. VBScript を生成して Excel COM 経由で体制図を再描画
4. 保存完了後に「体制図を更新しました(XX名)」と報告
## 制約
- 既存シートのフォーマット(フォント・ロゴ)は変更しない
- エラー時は taiseizu_error.log に詳細を記録して処理停止
3. Hook の組み込み
members.xlsx が更新されたら自動で体制図を再生成する PostToolUse Hook を設定する。
.claude/hooks/post-members-update.sh:
#!/usr/bin/env bash
# members.xlsx 書き込み後に体制図を自動再生成する
FILE="${1:-}"
if [[ "$FILE" == *"members.xlsx"* ]]; then
echo "[hook] members.xlsx 更新を検知 → 体制図を再生成します"
claude -p "taiseizu-updater: 体制図を更新して" --no-interactive
fi
~/.claude/settings.json に Hook を登録する。
{
"hooks": {
"PostToolUse": [
{
"matcher": "Write|Edit",
"hooks": [
{
"type": "command",
"command": "bash .claude/hooks/post-members-update.sh \"$TOOL_INPUT_FILE_PATH\""
}
]
}
]
}
}
4. 動作検証
# テスト:メンバーを1名追加して体制図が更新されるか確認
echo "テスト,チームA,エンジニア," >> data/members_test.xlsx
claude -p "体制図を更新して(テストモード)"
# 正常完了の確認
ls -la output/taiseizu.xlsx # タイムスタンプが更新されているか
open output/taiseizu.xlsx # 目視確認
KPI 変化
| 指標 | Before | After | 削減 |
|---|---|---|---|
| 体制図更新 1回の工数 | 30 分 | 3 分 | 90% |
| 月間工数(月3回発生) | 90 分 | 9 分 | 90% |
| メンバー変更から共有まで | 翌日〜当日夕方 | 5分以内 | — |
| レイアウト崩れによる再作業 | 月2〜3回 | 0回 | 100% |
応用:他の図表にも横展開可能
同じアーキテクチャ(台帳 → Claude Code → Excel 自動生成)は、ガントチャート・WBS・RACI マトリクスにも応用できる。「更新コストが高い Excel ドキュメント」を洗い出し、台帳(単一ソース・オブ・トゥルース)+ Claude Code 生成器のセットに変換するだけだ。
引用元
この記事の著者
claude-code-media 編集部/ Claude Code 専門編集チーム
Claude Code の非エンジニア向け業務効率化メディア『claude-code-lab.jp』を運営。フリーランス・中小企業・個人開発者向けに、実装テンプレ・業務自動化テクニック・Vibe Coding 入門を配信。
Related
