Excel の自動化スクリプトを作成

Python × Excel で自動化

日付:2025年3月9日

Excel の手作業を Python で自動化することで、業務の効率を大幅に向上させることができます。本記事では、Python を用いた Excel の自動化スクリプトの作成方法を解説します。

目 次

1. はじめに

Excel の手作業を Python で自動化することで、業務の効率を大幅に向上させることができます。
本記事では、Python を用いた Excel の自動化スクリプトの作成方法を解説します。

2. 環境準備

Python で Excel を操作するために、openpyxlpandasをインストールします。

BASH
pip install openpyxl pandas

3. 毎日のデータ更新を自動化

3.1 Excel データを自動更新

売上データの新規行を追加するスクリプトを作成します。

PYTHON
from openpyxl import load_workbook from datetime import datetime # Excelファイルを開く file_path = "sales_data.xlsx" wb = load_workbook(file_path) ws = wb.active # 新規データを追加 new_data = [datetime.today().strftime("%Y-%m-%d"), "新規商品", 300] ws.append(new_data) # 保存 wb.save(file_path)

実行結果

  • sales_data.xlsx に新しい売上データが追加される。

4. 定型レポートの自動生成

4.1 集計データを作成

Excel 内のデータを集計し、新しいシートにレポートを作成します。

PYTHON
import pandas as pd # Excelのデータを読み込む df = pd.read_excel("sales_data.xlsx", engine='openpyxl') # データを集計 df_summary = df.groupby("商品名")["売上"].sum().reset_index() # 新しいシートに出力 with pd.ExcelWriter("sales_report.xlsx", engine="openpyxl", mode="a") as writer: df_summary.to_excel(writer, sheet_name="集計結果", index=False)

実行結果

  • sales_report.xlsx に「集計結果」シートが追加され、商品ごとの売上合計が表示される。

5. Excel のメール送信を自動化

Excel ファイルを添付してメールを送信するスクリプトを作成します。

PYTHON
import smtplib from email.message import EmailMessage # メールの設定 msg = EmailMessage() msg["Subject"] = "最新の売上レポート" msg["From"] = "your_email@example.com" msg["To"] = "recipient@example.com" msg.set_content("添付ファイルをご確認ください。") # ファイルを添付 with open("sales_report.xlsx", "rb") as f: msg.add_attachment(f.read(), maintype="application", subtype="vnd.openxmlformats-officedocument.spreadsheetml.sheet", filename="sales_report.xlsx") # メール送信 with smtplib.SMTP_SSL("smtp.example.com", 465) as server: server.login("your_email@example.com", "your_password") server.send_message(msg)

実行結果

  • sales_report.xlsx を添付してメールが送信される。

6. まとめ

  • openpyxl を使って Excel のデータを自動更新。
  • pandas でデータを集計し、新しいシートを追加。
  • smtplib を用いて Excel ファイルを添付したメールを自動送信。

このような自動化スクリプトを活用することで、業務の効率を大幅に向上させることができます。

シリーズ一覧Python × Excel で自動化
4
タイトルリンク
第 1 回openpyxl & pandas 入門詳 細
第 2 回pandas でデータフレーム操作詳 細
第 3 回Excel フォーマットとレポート編集詳 細
第 4 回Excel の自動化スクリプトを作成この記事