Googleスプレッドシートに入力されたデータを、Python+ChatGPTで自動解析&レポート化するツールを作成します。
Excelやスプレッドシートを多用する業務で「分析作業を自動で済ませたい」という方に最適です。
📦 準備するもの
- Googleアカウント
- Google Cloud ConsoleでのAPI設定(Sheets API有効化)
- Python(gspread, oauth2client, openaiなど)
- OpenAI APIキー
🔧 使用ライブラリ
pip install gspread oauth2client openai
🧠 Google Sheetsの認証設定
- Google Cloud Consoleで「新規プロジェクト」作成
- 「Google Sheets API」を有効化
- サービスアカウントを作成 → JSONキーをダウンロード
- スプレッドシートの「共有」でサービスアカウントのメールを追加
📝 Pythonコード(データ取得+AI分析)
import gspread
from oauth2client.service_account import ServiceAccountCredentials
import openai
# APIキー設定
openai.api_key = "sk-あなたのAPIキー"
# Google Sheets認証
scope = ['https://spreadsheets.google.com/feeds','https://www.googleapis.com/auth/drive']
credentials = ServiceAccountCredentials.from_json_keyfile_name('credentials.json', scope)
client = gspread.authorize(credentials)
# スプレッドシート読み込み
spreadsheet = client.open("売上データ")
sheet = spreadsheet.sheet1
data = sheet.get_all_values()
# データをテキストに整形
header = data[0]
rows = data[1:]
table_text = "\n".join([", ".join(row) for row in rows])
# AIに要約+分析依頼
prompt = f"""
以下は売上データです。
列: {header}
内容:
{table_text}
このデータの傾向や異常点を分析し、3〜5行程度でレポートを作成してください。
"""
response = openai.ChatCompletion.create(
model="gpt-3.5-turbo",
messages=[{"role": "user", "content": prompt}]
)
print("【AIレポート】\n", response.choices[0].message["content"])
📌 出力例
【AIレポート】
・3月は売上が前月比+25%と大きく伸長
・カテゴリAの成長が全体を牽引
・顧客Cにおいて平均単価が急落しており要因分析が必要
⚠️ 注意点
- 表の量が多すぎるとトークン制限によりAI処理に失敗することがある
- 行ごとにテキスト変換されるため、読みやすい形式に整えるとより精度UP
- 定期実行するにはタスクスケジューラやcron連携を使うと便利
💡 応用アイデア
- AI分析結果を自動でスプレッドシートに書き込む
- SlackやLINEに自動通知
- グラフの自動作成+プレゼン資料化(PPT自動生成)
✅ まとめ
- スプレッドシートの定型業務をPythonとAIで自動化
- 人間と同じ視点で要点を抽出し、文章化してくれる
- 社内の報告作業を時短し、判断スピードを加速!
▶️ 次回予告
Day20では「SlackにAIレポートを送信するBot化」を行います。チーム全体でAIの恩恵を受ける仕組みを構築しましょう!
コメント