こんにちは、にいるです
今回、Salesforceとは全く関係のない番外編です
GoogleスプレッドシートのグラフデータをSlackへ自動送信する方法を紹介します
ちょっと個人的に使用したいことがあったので、作ってみました
1.Slackとは?
Slackとは、コミュニケーションツールです
チームや個人単位でチャットができるツールで、もう、どこの会社でも使ってると思います
そのくらい認知度が高いツールです
個人的に、チャットワークより断然Slackがいいですね
2.GAS
初めて書いたんですが、GAS(Google Apps Script)は、VBAみたいな言語でした
[ツール]→[スクリプトエディタ]から起動することができます
例えば、Trailheadのバッチの取得情報をグラフにしてみます
このグラフをSlackの特定のチャネルに送りたいと思います
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
function myFunction(){ // スプレッドシートの情報を変数に取得 var ss = SpreadsheetApp.getActiveSpreadsheet(); // シート名を指定してグラフを取得する var sheet = ss.getSheetByName("Trailheadバッチの個人別取得数"); var charts = sheet.getCharts(); var chartImage = charts[0].getBlob().getAs('image/png').setName("graph.png"); sendSlack(chartImage); } function sendSlack(chart){ var url = 'https://slack.com/api/files.upload'; // トークンを記載 var token = 'xxxx'; // 投稿したいチャネル名を記載 var channel = '#xxxx'; //パラメータ作成 var payload = { 'token' : token, 'channels' : channel, 'file' : chart, 'filename' : '【個人別】Trailheadバッチ取得数' }; var params = { 'method' : 'post', 'payload' : payload }; var response = UrlFetchApp.fetch(url, params); } |
このコードを実行すると、下記のようにグラフだけが送信されます
あとは送信する頻度をトリガで設定するだけです
3.まとめ
いかがでしたでしょうか
簡単に作成できて、便利ですね
管理会計、KPIの報告を自動化するという側面で多用できそうです
こういう連携や自動化できた時は嬉しいですね
皆さんもぜひ試してみてください
他にも色々と標準機能やSalesforce機能について紹介しています
そのまとめ一覧ページはこちらになりますので、よければ見てみてください
ではでは!