Google スプレッドシートで、ざっくりとスケジュールを把握できる「ざっくりスケジュール」を作りました。

※スプレッドシートからコピーを作成して、自由に編集していただいて構いません
※シートを利用して何か問題が起きても、一切の責任を追いませんのでご了承ください
背景
ある日、知り合いのNさんから「ざっくりとスケジュールを把握したいのですが、いいツールを知りませんか?」と聞かれました。
スケジュールを管理する方法はたくさんあると思います。ある程度までは無料で使えるサービスも多く、最近だと私は Notion が使いやすくてハマっています。また、このシートの作成途中でツイートした時に、@yhassy さんが AirTable での作り方を紹介してくださっていたので、AirTable をつかってみるのもいいと思います。(私のツイートから数時間後に動画解説がアップされているという早さ!)
それらのサービスを利用するほうが素早く実現できるし、柔軟性や拡張性、他のサービスとの連携もしやすいと思います。

ただ、今回 スプレッドシートで作成しようと思ったのは、スケジュールの表示方法が希望と合わなかったのが一番大きな理由です。よくあるガントチャートだと、工程ごとに行が追加されるかと思います。その場合、案件数や工程が増えると高さが膨らみ、全体を把握するには少し見づらくなってしまいます。月ごとにざっくりでいいので、ひとつの案件を1行で表示し、どこでどの工程の重なりが多いかを把握できるような表示にしたかったのです。
ざっくりスケジュールとは?
月単位でざっくりスケジュールを把握するためのスプレッドシートです。Google スプレッドシートと Apps Script で実装しています。
スプレッドシートには、入力用シートと工程表があります。入力用シートで値を入力して「シートに反映」を選択すると、工程表に反映されます。
入力用シート
- 値を入力するシートです。
- C列までは必須列です。
- 1行目D列以降の工程名と背景色を変更できます。工程は追加・削除もできます。背景色は、工程表に反映されます。
- 2行目D列以降の値は数字のみで、単位は月(1なら1ヶ月)です。

工程表
- 工程を把握できるシートです。
- 入力用シートで入力した内容が反映されます。
- 入力用シートのC列(サンプルの契約日)の日付から、その月を初月として計算しています。

注意事項
- シート名は変更しないでください(Apps Script で変更できる方はご自由にどうぞ)
- 工程表は「シートに反映」をすると一度内容がリセットされるので、もし手動でセルに値を追加しても消えてしまいます。
利用方法
- ブラウザを開き、Google アカウントにログインします。
- 「ざっくりスケジュール」を開きます。
- 「ファイル」→ 「コピーを作成」でファイルをコピーします。

- Google Apps Sprict を実行するため「続行」を選択し、権限を確認してスクリプトを許可します。
スクリプト許可の手順は、「【初心者向けGAS】スクリプト実行時の「承認」でびっくりしないために」の「2.承認とはなにか」以降を参考にさせていただきました。

- 「入力用シート」に値を入力し「シートに反映」を選択すると、「工程表」にスケジュールが表示されます。(件数によっては少し時間がかかります)
おわりに
ひとあし先に、出来上がったものをNさんに使ってもらいました。目の前で使ってもらい「わーすごい!」などと言いながら喜んでくれている姿を見ると、私もとても嬉しくなりました。
思えば、作ったものを目の前で使ってもらい喜んでる姿を見るというのは、とても久しぶりだったように思います。あぁ、この瞬間のためにものづくりしてるんだよな…と、改めて実感しました。
結構ガチガチな実装で荒削りな状態ですが、もしこういうのが欲しかったんだという方がいましたら、ぜひ使ってみてください!