【19日目】PythonとAIでスプレッドシートを分析&レポート自動化!

PythonとAIでスプレッドシートを分析 未分類

Googleスプレッドシートに入力されたデータを、Python+ChatGPTで自動解析&レポート化するツールを作成します。
Excelやスプレッドシートを多用する業務で「分析作業を自動で済ませたい」という方に最適です。

📦 準備するもの

  • Googleアカウント
  • Google Cloud ConsoleでのAPI設定(Sheets API有効化)
  • Python(gspread, oauth2client, openaiなど)
  • OpenAI APIキー

🔧 使用ライブラリ

pip install gspread oauth2client openai

🧠 Google Sheetsの認証設定

  1. Google Cloud Consoleで「新規プロジェクト」作成
  2. 「Google Sheets API」を有効化
  3. サービスアカウントを作成 → JSONキーをダウンロード
  4. スプレッドシートの「共有」でサービスアカウントのメールを追加

📝 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の恩恵を受ける仕組みを構築しましょう!

コメント

タイトルとURLをコピーしました