【Python】ChatGPT×Excelで日報・報告書を自動生成する方法|テンプレート連携

【Python】ChatGPT×Excelで日報・報告書を自動生成する方法|テンプレート連携 Python

毎日の業務報告や作業日誌を手動で書くのが面倒だと感じたことはありませんか?ChatGPT APIとExcelを連携させることで、簡単な作業実績やキーワードを入力するだけで、自然な文章による日報・報告書を自動生成することができます。

この記事では、ChatGPT APIを使ってExcelの入力データから日報文章を生成し、レポートとして出力するPythonスクリプトの作成方法を解説します。

前提条件とライブラリ

以下のライブラリを使用します。

pip install openai pandas openpyxl

また、OpenAI APIキーを事前に取得しておく必要があります。

Excelの構成例

以下のような列構成で入力用のExcelファイル(daily_input.xlsx)を用意します。

日付 担当者 作業内容 所感
2025/07/18 田中 データベースのバックアップ設定 特に問題なし

Pythonスクリプトで日報を生成

import openai
import pandas as pd

openai.api_key = "YOUR_API_KEY"

def generate_report(row):
    prompt = f"""
以下の情報をもとに、日報として適切な文章を作成してください。
・日付:{row['日付']}
・担当者:{row['担当者']}
・作業内容:{row['作業内容']}
・所感:{row['所感']}
    
文章はビジネス文書として自然なトーンにしてください。
"""
    response = openai.ChatCompletion.create(
        model="gpt-3.5-turbo",
        messages=[
            {"role": "system", "content": "あなたは日本語のビジネス文書を自動生成するアシスタントです。"},
            {"role": "user", "content": prompt}
        ]
    )
    return response.choices[0].message['content'].strip()

# Excel読み込み
df = pd.read_excel("daily_input.xlsx")

# 日報列を生成
df["日報"] = df.apply(generate_report, axis=1)

# 結果出力
df.to_excel("daily_output.xlsx", index=False)
print("日報ファイルを出力しました。")

生成される出力例

2025年7月18日、田中が担当し、データベースのバックアップ設定作業を実施しました。作業は予定通り進行し、特に問題は発生しませんでした。

応用:テンプレート文型に沿って生成させる

ChatGPTに以下のようなフォーマットで書かせるよう指示することも可能です。

「本日({日付})、{担当者}が{作業内容}を行いました。{所感}。」の形式で日報を作成してください。

まとめ

ChatGPTとExcelを組み合わせれば、簡単な入力だけで自然な日報・報告書を自動生成できます。毎日の作業報告や業務日誌の作成を効率化したい方にとって、非常に有効な仕組みです。

さらに応用すれば、週報・月報や、複数人分のレポート生成にも活用可能です。定型業務の効率化に、ぜひ取り入れてみてください。