1. HOME
  2. ブログ
  3. IT技術
  4. GASでスプレッドシート上のテキストをSlackに送信する

GASでスプレッドシート上のテキストをSlackに送信する

はじめに

本日はGASを使用してスプレッドシート上のテキストを指定した時間にスラックに送信する方法を解説します。

やりたいこととしては以下になります。

  • 1. スプレッドシートに次の日のタスクを忘れないようにメモする
  • 2. 指定した時間にslackにスプレッドシートの内容を送信する

では初めていきます!

スプレッドシート上で送信するデータを作成する

まずはスプレッドシートを新規で作成し、シート名などを任意に変更します。

次にA列の1行目に「やることリスト」と書き、その下に次の日のタスクを記載していきます。

シンプルですが、スプレッドシートに記載する内容は以上です!

GASでスプレッドシートのテキストを取得

スプレッドシートからデータを取得するメソッドを定義していきます。
スプレッドシート上のメニューバーから「拡張機能 → Apps Script」をクリックします。
開かれたApps Scriptのコード上に以下を貼り付けてください。

上記のメソッドでは以下のデータが返されます。

SlackのWebhook URLを取得する

Slackへはwebhookを使用してデータを送信します。
webhook URLを取得するために「Incoming Webhook」を導入します。
以下URLにアクセスします。
https://w1686765412-ozb429293.slack.com/apps/A0F7XDUAZ--incoming-webhook-?tab=more_info

表示されたページでSlackに追加をクリックします。

送信したいチャンネルをクリックし、インテグレーションの追加をします。

するとWebhook URLが発行されました。
こちらのURLにスプレッドシートのデータをPOST送信するとslackのチャンネルにメッセージを送信してくれます。
ではメッセージ送信用のメソッドをApps Scriptで作成してきます。

メッセージ送信メソッドを作成

Apps Scriptの最初に定義したgetSpreadsheetDataメソッドの下に下記コードを貼り付けてください

上記メソッドではスプレッドシートからデータを取得し、Webhook URLに対してデータをPOST送信しています。

これでメソッド実行時にSlackにメッセージが届くようになります。
実行をクリックしてみましょう。

 

届きました!
これで送信機能は実装できましたね。

指定した時間にメッセージが届くようにする

最後にメッセージを送信する時間を指定します。
画面左の時計アイコンをクリックしてください。

右下の「トリガーを追加」をクリックし、設定を以下のようにしてください。
ポイントは「実行する関数を選択」にpostToSlackメソッドが指定されていて、時刻で「午前9時〜10時」が指定されている点です。
これで「午前9時〜10時」の間にpostToSlackメソッドが自動実行され、Slack上にメッセージが届くようになります。
保存をクリックし完了です。

まとめ

今回はスプレッドシートとSlack連携の一部をご紹介させていただきました!
GASは簡単に便利機能が実装できるので気になった方はぜひチェックしてみてください!

書いた人はこんな人

はっと(エンジニア)
はっと(エンジニア)
服部晋平と申します!
前職では映像業や配送業に携わっていました。
趣味は、バイクツーリングに行ったり、美味しいラーメン屋巡りです。
未経験という身で入社させていただいたので、人一倍努力して頑張っていきたいと思います!

関連記事

採用情報

\ あの有名サービスに参画!? /

バックエンドエンジニア

\ クリエイティブの最前線 /

フロントエンドエンジニア

\ 世界を変える…! /

Androidエンジニア

\ みんなが使うアプリを創る /

iOSエンジニア