【第5回】GASでスプレッドシートを完全自動化〜人が動かなくても仕事が進む仕組みを作る〜

いよいよシリーズ最終回!今回は、Google Apps Script(GAS)でスプレッドシートを自動で動かす仕組みを作ります。
「AIが文章を作り」「GASが毎日実行する」──つまり、人が操作しなくてもレポートが自動更新される世界です。

自動化の流れ

  1. スプレッドシートに業務データを入力(例:タスクや売上)
  2. GASがChatGPTを呼び出して文章を生成
  3. GASが結果をメールで自動送信
  4. これらを「トリガー」で毎日決まった時間に実行

これで「朝8時にAIが日報を作って送る」といったことが完全自動で実現します。

実践コード例:AI日報を自動生成+メール送信

function dailyAutoReport() {
  const apiKey = 'YOUR_OPENAI_API_KEY';
  const sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
  const today = Utilities.formatDate(new Date(), 'Asia/Tokyo', 'MM/dd');
  const data = sheet.getRange('A2:A10').getValues().flat().filter(String);

  const prompt = `以下の業務内容をもとに、300文字程度の日報を作成してください。
- 丁寧語
- 3〜4文構成
- 最後に「明日の予定」を1文添えてください。
内容: ${data.join(" / ")}`;

  const response = UrlFetchApp.fetch('https://api.openai.com/v1/chat/completions', {
    method: 'post',
    headers: { Authorization: 'Bearer ' + apiKey },
    contentType: 'application/json',
    payload: JSON.stringify({
      model: 'gpt-3.5-turbo',
      messages: [{ role: 'user', content: prompt }],
      temperature: 0.4
    })
  });

  const json = JSON.parse(response.getContentText());
  const report = json.choices[0].message.content.trim();

  // シート出力
  sheet.getRange('C2').setValue(report);

  // メール送信
  GmailApp.sendEmail('manager@example.com', `【日報】${today}`, report);
}

これで毎日、AIが自動で日報を作成し、メール送信まで完了します。

自動化する(トリガー設定)

  1. GASエディタを開く → 左側の「時計マーク(トリガー)」をクリック
  2. 「トリガーを追加」ボタンを押す
  3. 実行関数に dailyAutoReport を選択
  4. イベントのソース:「時間主導型」
  5. 実行タイミング:「午前8時」などを選択して保存

これで毎朝、自動的にChatGPTが文章を作成し、メールを送るようになります。

よくあるトラブルと対策

  • 初回実行時に「承認が必要」エラー:「権限を確認」→「許可」で解決。
  • スクリプトが止まる:ChatGPT APIの回数上限・レスポンスサイズを確認。
  • メールが届かない:迷惑メールやGmailの制限を確認。

運用のコツ

  • AI出力をログに残す → 後から内容チェックできる。
  • APIキーは「プロパティサービス」に保存。
  • トリガー実行結果は「実行ログ」で定期確認。

まとめ:AI×GASで「仕組みが働く職場」へ

ここまでで、GASを使って「スプレッドシート → AI → メール配信」まで自動化できました。
人が動かなくても情報が整理され、報告が送られる。 これこそが業務効率化の完成形です。
今回のシリーズがお役に立てれば幸いです。

シリーズ記事

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次