スプレッドシートからSlackに通知を送る方法【GAS+Webhook】

スプレッドシートの操作にあわせて、Slackに通知を飛ばしたい!そんなときに使えるのが、Google Apps Script(GAS)+ SlackのWebhook連携です。

この記事では、シンプルな通知スクリプトを例に、Slackへメッセージを送信する方法をご紹介します。


✅ スクリプト全体(コピペOK)

function testSlack() {
  const payload = JSON.stringify({
    text: '✅ Slack Webhook 通知テスト成功!'
  });

  const options = {
    method: 'post',
    contentType: 'application/json',
    payload
  };

  UrlFetchApp.fetch(SLACK_WEBHOOK_URL, options);
}

🔧 使い方

  1. SlackのWebhook URLを取得する

 Slackの「Incoming Webhooks」機能を使って、通知先のWebhook URLを作成してください。
 (参考)SlackのApp設定 → Incoming Webhooks → 新しいWebhook追加

  1. スクリプトエディタにGASを貼り付ける

 スプレッドシートのメニューから
 拡張機能 > Apps Script を開いて、上記コードを貼り付けます。

  1. SLACK_WEBHOOK_URL を実際のURLに置き換える
const SLACK_WEBHOOK_URL = 'https://hooks.slack.com/services/xxxxx/yyyyy/zzzzz';
  1. 実行してみる

 testSlack を実行すると、Slackに「✅ Slack Webhook 通知テスト成功!」と表示されれば成功です。


✅ 応用のヒント

  • 通知内容をスプレッドシートのセルの値に動的に変えたい場合は SpreadsheetApp.getActiveSpreadsheet() を使って取得可能。
  • 条件付き通知(○○列に「完了」と入力されたら通知など)にも応用できます。

💬 まとめ

Slackへの通知は、GASを使えばとっても簡単に実現できます。社内の進捗共有やエラーアラートなど、さまざまな業務に役立ちます。まずはWebhook通知テストから始めてみましょう!


この記事を書いた人

田島 佑清

2児の父 / ネクストメディア株式会社のエンジニア