毎週、スプレッドシートの数字を見ながら同じ形式のレポートを作る——この「形式が決まった繰り返し作業」こそ、AI自動化が一番得意とする領域です。
この記事では、毎週月曜の朝、スプレッドシートのデータからレポートの下書きが自動で自分に届く仕組みを作ります。週60分の作業が、確認の5分だけになります。
このレシピでできること
- 毎週月曜7時、先週分のデータを集計したレポート下書きがメールで届く
- 数字の転記ミスがゼロになる
- AIが「先週との比較コメント」まで書いてくれる
準備するもの
- データが日付つきで記録されているスプレッドシート(例:A列に日付、B列に売上や件数)
- Gemini APIキー(無料枠でOK。取得方法と安全設定はこちらの記事)
セットアップ手順(約20分)
- データのあるスプレッドシートで「拡張機能」→「Apps Script」を開く
- 下のコードを貼り付ける
- 冒頭の3か所(APIキー・シート名・レポートの宛先)を書き換える
- 「実行」でテストし、メールが届くことを確認する(初回は承認あり)
- トリガーを「週ベースのタイマー・毎週月曜・午前7〜8時」に設定する
function weeklyReport() {
// ▼ 書き換えるのはこの3行だけ
const API_KEY = "ここにGemini APIキー";
const sheetName = "データ";
const sendTo = Session.getActiveUser().getEmail(); // 別の宛先なら "xxx@example.com"
const sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName(sheetName);
const data = sheet.getDataRange().getValues();
const oneWeekAgo = new Date(Date.now() - 7 * 24 * 60 * 60 * 1000);
// 直近1週間分の行だけ抽出(A列が日付の前提)
const recent = data.filter(function(row) {
return row[0] instanceof Date && row[0] > oneWeekAgo;
});
if (recent.length === 0) return;
const table = recent.map(function(row) { return row.join("\t"); }).join("\n");
const prompt = "あなたはレポート作成アシスタントです。" +
"以下の1週間分のデータをもとに、(1)主要数値のまとめ、" +
"(2)気づいた傾向、(3)来週に向けた一言、の3部構成で" +
"簡潔な週次レポートの下書きを日本語で書いてください。\n\n" + table;
const res = UrlFetchApp.fetch(
"https://generativelanguage.googleapis.com/v1beta/models/gemini-2.0-flash:generateContent?key=" + API_KEY,
{
method: "post",
contentType: "application/json",
payload: JSON.stringify({ contents: [{ parts: [{ text: prompt }] }] })
}
);
const report = JSON.parse(res.getContentText())
.candidates[0].content.parts[0].text;
MailApp.sendEmail(sendTo, "【自動】週次レポート下書き", report);
}
初回実行時の「承認が必要です」画面は、自分のプログラムに自分で許可を出す手続きです。怖く感じたら承認画面を全部解説した記事をどうぞ。また、モデル名やAPI仕様が変わってエラーになったら、エラー文をAIに貼って「最新の書き方に直して」と頼めば解決します。
自分の業務に合わせるカスタマイズ
- レポートの構成を変えたい:コード内のprompt(日本語の指示文)を書き換えるだけ。コードの知識は不要です
- 上司に直接送りたい:sendTo を上司のアドレスに……する前に、まずは自分宛てで数週間運用して精度を確かめるのがおすすめ
- Slackに送りたい:「このGASの送信先をSlackのWebhookに変えて」とAIに頼めば書き換えてくれます
運用のコツ:「下書き」と割り切る
AIのコメントはたまにピントがずれます。このレシピの価値は「完成品が届くこと」ではなく、毎週ゼロから書き始めなくてよくなること。届いた下書きに自分の視点を1〜2行足して提出する運用が、品質と時短のバランス最強です。
自動化のゴールは「無人化」ではなく「確認だけで済む状態」。最後のひと手間が、レポートの信頼を守ります。


コメント