今まで、GTD しようと、小さい紙切れに枠を印刷して持ち歩いてみたり、Tracks とかその他 Web アプリを使ってみたりしてみた。だけど、数日で面倒くさくなって、うまくいかなかった。めんどくさくなる理由としては、紙切れを並び替えたりなくさないように丁寧に扱ったりすることが面倒だったり、Web アプリに大量の項目を一気に追加したりできないというのが主な理由だった。
がちゃがちゃコピペで大量に突っ込んだり消したり並び替えたり項目を絞り込んで表示したいなら Excel でおkということに最近気がついたので、そっちに移行してみた。
ファイルをうpっておこうかと思ったけど、プロパティに名前とか入ってるので、それは却下の方向で。
シートのカラムは、
- カテゴリ
- コンテクスト
- 期限(日付)
- 状態
- プロジェクト
- 本文
- 予想(分)
- 実際(分)
- 開始時間
- 終了時間
という感じ。
カテゴリには、
- 仕事
- 勉強A
- お遊び
等を入れる。ここで大きくカテゴリ分けしてしまう。
そして、コンテクストには、
- 気になること(inbox)
- いますぐやる
- 連絡待ち
- 暇なときやる
- 終わった
等を入れる。コンテクストに @home とか入れるのは好きではないので、こういう風に分類することにした。
カテゴリ、コンテクストの候補は、別シートに追いといて、リストから選択できるようにする。 (エクセル技道場: 可変範囲の名前定義で、リストへの追加/削除に自動的に対応 を参考にした)
プロジェクトには、数時間単位の作業等の名前をつけておく。
状態には、こんな感じのものをつっこんでおく。インデントつけると無駄に深い。何かもっと楽ちんな方法があるのだろうけど、知らないのでこういう恥ずかしい IF 文の固まりになった。楽ちんな方法があれば教えてください。
=IF(C21<>"",
IF(C21<TODAY(),"遅れてる!",
IF(C21=TODAY(),"今日",
IF(C21=(TODAY()+1),"明日",
IF(C21=(TODAY()+2),"明後日",
DATEDIF(TODAY(),C21,"D")&"日後"
)
)
)
),"")
こんな感じで、書式などを設定した行を作ってコピペ用に非表示状態で置いておく。
あとは、「追加」「全件表示」「タイマー開始」のボタンを作って、それぞれ button_Add_Click button_showall_Click button_start_Click に割り当てておく。
追加ボタンで新しいエントリを追加し、全件表示ボタンでオートフィルタをクリアできる。タイマー開始ボタンでは、そのエントリにかかった時間を測定できる。
技術評論社 (2006/03/23)
売り上げランキング: 2342

LifeHacksの取っ掛かりに最適
忙しい人こそ読んでみて
GTDのとっかかりとしては良い
Const colStart As Integer = 9
Const colEnd As Integer = 10
Const colStatus As Integer = 2
Const colBody As Integer = 6
Const rowTmpl As Integer = 5
Const rowStarts As Integer = 7
Private Sub button_Add_Click()
Dim lastRow As Integer
Dim lastCol As Integer
lastRow = UsedRange.Rows.Count
lastCol = UsedRange.Columns.Count
Range(Cells(rowTmpl, 1), Cells(rowTmpl, lastCol)).Copy Destination:=Cells(lastRow + 1, 1)
Cells(lastRow + 1, colBody) = "new"
Cells(lastRow + 1, 1).Select
End Sub
Private Sub button_showall_Click()
Dim lastRow As Integer
ActiveSheet.AutoFilterMode = False
Cells(rowStarts, colBody).Select
Selection.AutoFilter
lastRow = UsedRange.Rows.Count
Cells(lastRow + 1, 1).Select
End Sub
Private Sub button_start_Click()
Dim row As Integer
row = ActiveCell.row
If row < rowStarts Then
MsgBox "out of range"
Exit Sub
End If
If Cells(row, colBody) = "" Then
MsgBox "no action"
Exit Sub
End If
If Cells(row, colEnd) <> "" Then
MsgBox "already done"
Exit Sub
End If
Cells(row, colStart) = Now
MsgBox "If you done " & Cells(row, colBody) & ", Press OK"
Cells(row, colEnd) = Now
Cells(row, colStatus) = "終わった"
Cells(row, colBody).Select
End Sub
はまの出版 (2001/09)
売り上げランキング: 5233

内容はもちろん良いのですが
翻訳などどうでもいい!!
まずは実践あるのみ。


Leave a comment