「毎日の売上をExcelに入力してグラフ化するのが面倒…」そんな悩みを解決できるのが、Python × Googleスプレッドシート の自動化です。
この記事では、Pythonを使って
- 日次売上を自動でスプレッドシートに記録
- 売上推移をグラフ化して可視化
する方法を、初心者でもわかるように解説します。
なぜGoogleスプレッドシートを使うのか?
- クラウド上で共有できる:チーム全員が同じデータをリアルタイムで確認可能
- 無料で利用できる:GoogleアカウントさえあればOK
- API経由で操作できる:Pythonから直接データを更新・取得可能
つまり「自動記録」と「見える化」に最適な環境です。
事前準備
① Google Cloud Platform(GCP)でAPIを有効化
- Google Cloud Console にアクセス
- 新規プロジェクトを作成
- 「Google Sheets API」と「Google Drive API」を有効化
- サービスアカウントを作成し、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やメールへの自動通知
など、業務改善につながる仕組みを構築できます。
「売上管理に時間をかけすぎている…」という方は、ぜひ導入してみてください!