【ノーコード】二児のママがslackからスプレッドシート登録する残業申請を15分で作りました！

# はじめに
こんにちは。二児のママです。
普段はデータベース運用保守を担当していますが、
今回は、本業とは別でslackとスプレッドシートについてお話させてください。

プライベートでは毎日育児に追われています。早く仕事おわらして怪獣（子供）２匹の相手をしなければなりません。
なので、日々業務効率化を目指しています。
今回は、その一つとして残業分析をすることにしました。
要件は次の通りです。
・どんな業務にどのくらい時間をつかってるか分析したい
・残業が発生した理由を集計して分析してみる
・だけど、残業申請はめんどくさい
・あとあと残業分析をしたいためデータは貯めておきたい
・データはスプレッドシートに貯めたいが、直接開いて更新するのは面倒だ
・普段使っているslackからスプレッドシートに登録してみてはどうか？

今回は上記理由からslackからスプレッドシートに登録する方法についいて調べましたので、
備忘録をかねてご紹介したいと思います。
GASを使うと思っていたのですが、slackのワークフロービルダーを使うとノーコードで作ることができました。
簡単なのでぜひ皆さんも試してみてください♪
# できたこと
### slack
まず、slackで残業申請するよう通知が来ます。「残業」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/113544/55b3be8f-3324-c26d-8ede-eb3eb8d0ffb2.png)

今回作った「残業分析くん」が表示されるので内容を記載します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/113544/e9fc06e0-d94c-97ca-ef9a-2a50812f3158.png)
### スプレッドシート
これでスプレッドシートに内容が反映されます。
この**slackで内容入力 → スプレッドシートへ登録が今回やりたい**ことです。
この内容に興味があれば以降もお読みいただければと思います。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/113544/391629d1-5491-85bd-fb8b-fa5626d2a788.png)

# 設定方法
それでは早速設定してみましょう！

ツール→ワークフロービルダーを選択します。
![ワークフロービルダー.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/113544/511d766c-736e-729b-f18c-3ee7b5650e37.png)



ワークフロービルダーが表示されるので作成をクリックします。
![作成.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/113544/e63a353c-50ce-ad02-0519-6d229e5ef0a0.png)

ワークフローに名前を入力します。
なんでもOKですが先ほどのワークフロービルダーを開いた時に一覧で表示される名前になりますので、用途にあった名前がいいと思います。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/113544/9488c604-5153-4257-1711-c05efce32485.png)

ここで何をトリガーにワークフローを開始するかを選択できます。
今回は、午後16:30になったら残業申請をするようにslack通知が飛ぶようにしたいので、
「スケジュールされた日付と時間」を選択します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/113544/6aa4dcb5-3bcd-e16c-8cd4-5cab18a98d37.png)

次の画面が表示されますので、slackで通知を受信したい日時を選択します。
今回は「月から金まで毎日」で16:30に設定しました。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/113544/40b284b7-a91a-cd91-9018-5c78dbc441be.png)

ワークフロービルダーが表示されるので、「ステップを追加」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/113544/7c2ced9a-e9bf-2a3c-03ff-dabe73bbb6a5.png)

ここでアンケート形式で入力するかフォームか、ただのメッセージを送るか、スプレッドシートに登録するかが選択できます。
今回は「フォームを送信する」を選択します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/113544/1c7e2a90-dca1-2708-de9e-8ea5c4d4d87d.png)


次の画面で実際にメッセージを送るチャンネルや内容を登録していきます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/113544/5f592174-6b24-c52f-b96d-be8325df2ff5.png)
登録項目は以下の通りです。
・このフォームの送信先 :チャンネル名や個人名
・タイトル：このワークフローがslackのチャンネルに表示されるタイトル
・質問を追加：聞きたい内容
・質問のタイプを選択する：短い回答、長い回答、プルダウン、メンバー、DMから選択

ここまででslack側の設定が完了です。
次は、スプレッドシートに登録する設定を行います。「Add spreadsheet row 」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/113544/a44ade43-7704-846e-886d-af4998b36960.png)

以下の黄色枠の部分から登録したいスプレッドシートを選択します。
※スプレッドシートは事前に作成しておきます。
※メールアドレスと氏名は塗りつぶしています。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/113544/fe567371-a50e-5e69-b979-9e9397104b30.png)

ここでは、「残業分析くん」というスプレッドシートと「残業発生理由」というシート名を選択しました。
次に実際に登録したい内容を登録していきます。
ここでは日時、氏名、残業発生理由などの項目を作りました。
※スプレッドシート側に登録するカラムも事前に作成しておきます。
※メールアドレスと氏名は塗りつぶしています。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/113544/8abe6f97-13ff-db57-928b-e0b3f9c0706e.png)

Value（任意）には変数を挿入することができます。
上記画面で「変数を挿入する」をクリックすると次のような画面が表示され、slackでフォームを送信した時間や内容を登録することができます。
日時やフォームを提出したメンバーは、自分で入力しなくても自動で登録されるようになるので便利です！
※メールアドレスと氏名は塗りつぶしています。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/113544/4fe36fc4-a09d-d008-4437-3e350331de59.png)


ここまでで大枠は完成です！
私は、これだけだと味気ないので最後に投稿してくれた人向けへのメッセージとして
「残業してくれてありがとう！」というメッセージが表示されるようにしました。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/113544/9ebfc298-fd02-6baf-1b29-6f5753644d99.png)


以上、これでslackからスプレッドシートへ登録する残業申請の作成が完了です。
本記事のはじめに戻って実際に動くか試してみてください。

# 最後に
今回ノーコードでslackからスプレッドシートへ登録する残業申請を作成しました。
初めはGASを使ってどうにかやっていましたが、Outgoing Webhookが「トークン」や「引き金となる言葉」が設定がなくなっているようで設定できませんでした。
どうしようか・・悩みながら調べているうちにこのslackのワークフロービルダーに辿り着いたのです。
そしたら、どうでしょう。なんとノーコードで設定ができるじゃないですか！なんてすばらしい！！
ワークフロービルダーはスプレッドシートの追加だけでなく、更新もできるようなのでslackからスプレッドシートの更新もできそうですね。
他にも便利な機能があると思いますので今後も活用していきたいと思います。
皆さんも是非活用してみてくださいね。

それでは、最後までお読みいただきありがとうございました！！！