Google ドキュメントで日報を書くための自動処理
はじめに
その日やったこと覚えていますか?
私は覚えていません。 3日前に何を食べたのか何を言ったのか何をしたのか、おのののか。 って誰だっけ?まぁそんなどうでもいいことはおいといて。
覚えられないなら書けばいいということでGoogleドキュメントにその日あったことを記載しています。 この日報は外に公開するための文章書きの練習のようなそうでもないようなものなので扱いが異なります。 個人情報や会社で起きたことをパブリックに晒したらえらいこっちゃですから。
ちなみにその日報に書き込むことは箇条書きになっています。 なんとなく分かればいいので。
一方でやったことをリセットするための方法を常に書き込んでいます。 「〇〇サービスに契約したので、〇月末にこのURLへ遷移して解約ボタンを押す。」 といったようなことはしっかり書き込んでいます。 これをサボると後々面倒なことになりますから。 そういうことが起きないようにプライベートな日報を書いている。
それを書くのに役立つスクリプトも設定している。 それが以下の通りになる。
Google Apps Script
日報を書く上で一番面倒なのがフォーマットを追加すること。 なので自動化して開いたらすぐに書き込めるようにした(さらに可能なら「明日のタスク」の項目をコピーして事前に記載しておきたいけども…)。
要注意ポイントなのですが、逆順に追加していきます。 他にもやり方はあるんだろうけどこれが現状のコードです。
日付を追加し、見出し2のテキストと箇条書きリストの空文字を追加している。
2
はタイトルとサブタイトルを考慮した追加位置。
function addLines() {
var document = DocumentApp.openById('ここにGoogleドキュメントのIDを記載する');
var body = document.getBody();
// 改ページ
body.insertPageBreak(2);
// 明日のタスク・改善点
body.insertListItem(2, "")
.setGlyphType(DocumentApp.GlyphType.BULLET)
.setHeading(DocumentApp.ParagraphHeading.NORMAL);
body.insertParagraph(2, "明日のタスク・改善点")
.setHeading(DocumentApp.ParagraphHeading.HEADING2);
// 反省・問題点
body.insertListItem(2, "")
.setGlyphType(DocumentApp.GlyphType.BULLET)
.setHeading(DocumentApp.ParagraphHeading.NORMAL);
body.insertParagraph(2, "反省・問題点")
.setHeading(DocumentApp.ParagraphHeading.HEADING2);
// 作業報告
body.insertListItem(2, "")
.setGlyphType(DocumentApp.GlyphType.BULLET)
.setHeading(DocumentApp.ParagraphHeading.NORMAL);
body.insertParagraph(2, "作業報告")
.setHeading(DocumentApp.ParagraphHeading.HEADING2);
// 日付
body.insertParagraph(2, `${new Date().getFullYear()}/${("0" + (new Date().getMonth() + 1)).slice(-2)}/${("0" + new Date().getDate()).slice(-2)} (${['日', '月', '火', '水', '木', '金', '土'][new Date().getDay()]})`)
.setHeading(DocumentApp.ParagraphHeading.HEADING1);
document.saveAndClose();
}
トリガー
- 時間主導型
- 日付ベースのタイマー
- 午前7時〜8時
の設定にしている。
おわりに
Googleドキュメントを開くのが面倒なのでそこの改善点は色々あるだろうなと思ってます。 ただ書く抵抗が減るのはいいかなと。 日報を記載したかどうかは空欄状況を見れば一目瞭然なのでそこもいいかな。
なんにせよGoogleドキュメントも簡単に自動化できるのがいいですね。