GTD方式のタスク管理がエクセルでうまくいかないわけ 中編
みなさんこんにちは。年の瀬が近づいてから猛烈にもろもろについての後悔を始めるトム・ヤムクンです。
今日は前回の続きのお話で、「エクセルを使ってGTDによるタスク管理をしたいけれど、なかなかうまくいかないからどうしよう?」みたいなお話をしていきます。
前回の内容(この話題の前編)はこちら
→GTD方式のタスク管理がエクセルでうまくいかないわけ 前編
GTDそのものの話題についてはこちら
→トラベラーズノートパスポートサイズとダイソーのパスポートノートでアナログGTDが捗る
さて、エクセルではGTDによるタスク管理が煩雑すぎて挫折することに気づいたトム・ヤムクン。この問題をいかに解決するのか頭をひねりまくったあげく、ある答えにたどり着きました。
解決策としてのVBA
VBAを使えばできるんじゃない?
というわけで思いついた解決策がVBAを使うことです。
VBAはエクセルのさまざまな操作を自動でできる手法で、手作業であれば非常に長い時間がかかる作業も、ワンボタンでできたりするのですよ。
エクセルVBAに関しては、以下のようなサイトがわかりやすくておすすめですので、これから勉強してみようという方や興味のある方はぜひ参考にしてみてください。
さてさて、僕が悩んでいる上記の問題って、要するに以下のことが可能であれば解決するわけです。
すなわち、
「コンテクストとプロジェクト、両方に同じタスクを配置して、一方を消したり内容を書き換えたりしても、もう一方にちゃんと反映されている」
ということです。
エクセルの基本機能だけでは、これをやろうとしても無理だったわけですね(可能かもしれないが、関数を二重三重に駆使して非常に煩雑なことになる)
僕のやりたい「エクセルでのタスク管理」には、たとえば以下のような作業が必要になります。
列方向(タテ)にタスクを並べ、行方向(ヨコ)には各タスクの属性を書いていく
※属性とは、「どのプロジェクトに属しているのか」「コンテクストは何か(家でやることなのか、すぐにやることなのか、パソコンがないとできないことなのか)」「進捗状況はどのくらいか/完了しているのか」「締切があるとすれば、それはいつか」などのことです。
このあたりはもちろん、標準機能でもできるのですが、これ以降はVBAでないとできません。上記の問題点への対策として、VBAによって僕が実現しようとしているこのタスク管理ツールの機能は以下のようなものです。
inbox、プロジェクト、コンテクスト、の3種のリストをつくる。
※それぞれの役割をざっくり説明すると、
Inbox:ひとまず思いついたタスクや発生したタスクをどんどん書き込んでいくところ
プロジェクト:「旅行の計画」や「転職」などの、多くのタスクがそのなかに含まれる計画や大きなイベントなど。ここで、各プロジェクトを、それに含まれる細かいタスクに分解することによって実施しやすくする
例)プロジェクト・旅行の計画→タスク「家族で行き先を話し合う」、タスク「予算を決める」、タスク「旅行代理店に相談に行く」、タスク「持ち物リストを作る」
コンテクスト:「家でやる」や「どこでもできる」など、細かいタスクが「どの場面で実行できるか」に着目して分けた属性。
例)家族で行き先を話し合う のコンテクストは「家」
予算を決める のコンテクストは「どこでも」
旅行代理店に相談に行く のコンテクストは「外出」
このように分けることによって、家にいるときは「家」のリストを見ればそこでできることを過不足なく把握できる、というわけです。
使用方法のイメージ
さて、ここからは、僕が想定しているGTDツールの使い方についてご説明します.
1. inboxで、そのタスクの移動先となるプロジェクトを指定する。
ボタンを押すとこのプロジェクトにタスクが移動する(コピペされる)。そしてinboxからは消える。
まず、思い浮かんだり他人からのオーダーによって発生したタスクを分別するのがこのパート。ここがスムーズにいかなかったり、面倒くさかったりすると、GTDそのものの作業を怠ってしまうことになるので注意が必要です。
2. プロジェクトでコンテクストを指定し、ボタンを押すとそのコンテクストに移動する。しかし「プロジェクトには残る」
この機能は、前回の単純にエクセルの機能のみを使ったGTDで、僕が挫折したいちばんのウィークポイントを補うものです。
あるタスクの「プロジェクト内での位置づけ」と、「そのタスクがどの場面で実行可能かということ(コンテクスト)」を、それぞれしっかり把握することで、的確な各プロジェクトの進捗管理ができるのです。
3.コンテクスト上で、あるタスクがどのプロジェクトに属するか、が表示されているが、そのプロジェクトの全貌や進捗状況などをチェックしたいときは、ワンクリックで各プロジェクトのページに飛ぶことができる
いざタスクを実行したいときはコンテクストのシートを見れば一目瞭然、そして、プロジェクトページにも内容が残ることによって、プロジェクトの内容もこまめにチェックすることができます。
このように、エクセルの標準機能だけではどうにも実現できなかったさまざまな高いパフォーマンスを発揮してくれるのがこのエクセルVBAによるGTDツール。
あくまでも上記でご紹介したのは構想のみで、実物のプログラムは目下、作成中です(汗)
完成次第、またご報告します。
トム・ヤムクンでした。