SpreadSheet+GASで問題集の学習記録を管理
以下、スプレッドシートとGASです。
(GASで管理と言っていますが、ほぼスプレッドシートで操作します。)
スプレッドシート
https://docs.google.com/spreadsheets/d/1S8epUJekwi3-K9QUUsAP7RY8Mki2bUKKkcqFYnO9kI4/edit?usp=sharing
GAS
https://github.com/ymmmtym/study-log
作ったきっかけ・GASで作った理由
「ベッドの上で寝ながら学習ができる」
Ping-Tや基本情報技術者試験ドットコムにはかなりお世話になりました。
普段はベッドの上でスマホをいじることが多い私ですが、その状態でも学習ができる環境というのは素晴らしいことだと思っています。
「学習=机に向かう」ではなく、「学習=いつどんな環境でも学びたい」という思いでこのスクリプトを書きました。
GASで作った理由としては、主に以下の理由があります。
- 当時はexcelの操作に慣れていた(excelライクで使用できる)
- webアプリ(railsとかdjango)で開発するには大変そう
- ローカルで管理する(公開する必要がない)ので無料でできる
作った当初は特にwebアプリ開発経験もなく、「とりあえず使えればいい」という思いでした。
なので、少し触ったことのあるjsのように扱えるGASだけで作れるということもありGASにしました。
使い方
ソースコードはgithubで管理して、chrome拡張機能を使ってGASと連携しています。
詳しくは以下のサイトが参考になるかと思います。
https://qiita.com/tanabee/items/2c51681396fe12b6a0e4
問題集シートの作成
まずはツールバーの「scripts」から問題集用のシートを作成してください。
ポップアップが表示されるので、シートの名前を入力してください。
templateシートから問題集用のシートがコピーされます。
問題を解く
初回に解く問題の解答はF列の「1回目」に記載してください。
2回目以降は2回目と書かれている列に記載しましょう。
木になる問題はE列にチェックを入れておきましょう。
問題が解き終わったら(余った行があったら)「不要行削除」を実行してください。
要らない行が削除されます。
解答を記入する
※初回のみ(2回目以降はA列に解答を記入する必要はありません。既にA列に解答が記載されて入れば正誤判定されます。)
A列に解答を記載してください。
スプレッドシートの関数によって、x回目の解答を記載した右側に正誤判定(◯ or ×)が表示されます。
B列(赤いシート)には正解した回数、C列(青いシート)には不正解の回数が自動的にカウントされます。
チェックをつけた問題の確認
確認したいシートに移動し「このシートのチェック問題を表示」を実行してください。
チェックをつけた問題の番号がポップアップで表示されます。
graphシートで正答率を確認
graphシートを確認する前に、「scripts」から「graphシートに移動して全シートのリンクを取得」を実行してください。
チェック数、3回(不)正解、正解率がシートに反映されてグラフにも表示されます。
解答表示
1:1セルにチェックをつけるとA列が黒くなり解答が見れなくなります。
問題を解くときはこのモードにして解答が見えないようにしましょう。
また「解答(非)表示」を実行すると、全シートの解答と過去に解いた問題が(非)表示になります。
最後に
大手の問題集サイトには劣りますが、GASを使って簡単に学習記録をすることが出来ました。
今後はWeb公開やRestAPIなどと連携して、幅広く活用出来ればいいなと考えております。
(もし使用してみたい方がいらっしゃいましたら、ご連絡いただければ嬉しいです。)