PythonでGoogleスプレッドシートを操作!日次売上を自動記録&グラフ化

「毎日の売上をExcelに入力してグラフ化するのが面倒…」そんな悩みを解決できるのが、Python × Googleスプレッドシート の自動化です。

この記事では、Pythonを使って

  • 日次売上を自動でスプレッドシートに記録
  • 売上推移をグラフ化して可視化

する方法を、初心者でもわかるように解説します。


なぜGoogleスプレッドシートを使うのか?

  • クラウド上で共有できる:チーム全員が同じデータをリアルタイムで確認可能
  • 無料で利用できる:GoogleアカウントさえあればOK
  • API経由で操作できる:Pythonから直接データを更新・取得可能

つまり「自動記録」と「見える化」に最適な環境です。


事前準備

① Google Cloud Platform(GCP)でAPIを有効化

  1. Google Cloud Console にアクセス
  2. 新規プロジェクトを作成
  3. 「Google Sheets API」と「Google Drive API」を有効化
  4. サービスアカウントを作成し、JSON形式の認証ファイルをダウンロード

② Pythonライブラリのインストール

pip install gspread oauth2client matplotlib
  • gspread:Googleスプレッドシートを操作するライブラリ
  • oauth2client:認証用ライブラリ
  • matplotlib:売上グラフ作成用

Pythonで日次売上をスプレッドシートに記録

以下のサンプルコードでは、

  • 今日の日付と売上を自動で記録
  • 「日次売上」というシートに追記

する処理を実装しています。

import gspread
from oauth2client.service_account import ServiceAccountCredentials
from datetime import datetime

# 認証情報の設定
scope = ["https://spreadsheets.google.com/feeds",
         "https://www.googleapis.com/auth/drive"]

creds = ServiceAccountCredentials.from_json_keyfile_name("credentials.json", scope)
client = gspread.authorize(creds)

# スプレッドシートを開く
spreadsheet = client.open("日次売上管理")
sheet = spreadsheet.sheet1  # 1枚目のシート

# 今日の日付と売上データ
today = datetime.now().strftime("%Y-%m-%d")
sales = 12500  # 例:システムから自動取得も可

# データを追記
sheet.append_row([today, sales])

print("日次売上を記録しました!")

✅ これで毎日実行するだけで、自動的にスプレッドシートに売上が蓄積されます。


Pythonで売上推移をグラフ化

売上データを取得して、matplotlibで折れ線グラフを作成します。

import matplotlib.pyplot as plt

# シートからデータ取得
records = sheet.get_all_records()
dates = [r["日付"] for r in records]
sales = [r["売上"] for r in records]

# グラフ描画
plt.figure(figsize=(8,5))
plt.plot(dates, sales, marker="o", linestyle="-")
plt.title("日次売上推移")
plt.xlabel("日付")
plt.ylabel("売上")
plt.xticks(rotation=45)
plt.tight_layout()
plt.savefig("sales_chart.png")
plt.show()

✅ これで「売上推移グラフ(sales_chart.png)」が出力されます。
✅ さらにGoogleスプレッドシート自体にグラフを追加することも可能です。


自動化のポイント

  • スケジューラーを使う
    • Windowsなら「タスクスケジューラ」
    • Mac/Linuxなら「cron」
      でPythonスクリプトを毎日自動実行
  • 売上データの自動取得
    • ECサイトのAPIやPOSシステムから売上を取得し、スプレッドシートに反映すれば完全自動化が可能

まとめ

今回は Python × Googleスプレッドシート を使って、

  • 日次売上を自動記録
  • 売上推移をグラフ化

する方法を解説しました。

これを応用すれば、

  • 部署ごとの売上集計
  • 週次・月次レポートの自動作成
  • Slackやメールへの自動通知

など、業務改善につながる仕組みを構築できます。

「売上管理に時間をかけすぎている…」という方は、ぜひ導入してみてください!

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