Excel で GTD ってみる

| 0 Comments | 1 TrackBack

今まで、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 に割り当てておく。

追加ボタンで新しいエントリを追加し、全件表示ボタンでオートフィルタをクリアできる。タイマー開始ボタンでは、そのエントリにかかった時間を測定できる。

Life Hacks PRESS ~デジタル世代の「カイゼン」術~
田口 元 安藤 幸央 平林 純 角 征典 和田 卓人 金子 順 角谷 信太郎
技術評論社 (2006/03/23)
売り上げランキング: 2342
おすすめ度の平均: 4.5
4 LifeHacksの取っ掛かりに最適
4 忙しい人こそ読んでみて
5 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
おすすめ度の平均: 3.5
3 内容はもちろん良いのですが
5 翻訳などどうでもいい!!
5 まずは実践あるのみ。

1 TrackBack

TrackBack URL: http://blog.woremacx.com/MT/mt-tb.cgi/206

たまにはまじめなことも書いていきますが、プロジェクトが変わる時期なので自身のタスク管理にと GTD を導入することにしました。 今まで興味はあったんだけど中々そのタイミングがなかったんですが、今期の業務目標に納期遵守と書いて自分にプレッシャーをかけて、やらざる Read More

Leave a comment

About this Entry

This page contains a single entry by woremacx published on April 15, 2007 3:56 AM.

The Baker Brothers / Hot Cakes: Live In Japan was the previous entry in this blog.

Billy Martin, John Medeski / Mago is the next entry in this blog.

Find recent content on the main index or look in the archives to find all content.