[memo] Numbers/OpenOffice/GoogleスプレッドシートでWBSのためのナンバリングの数式
- Webアプリ制作のための仕事の見える化をしたくって、WBS(WorkBreakDown Structure)をMacで最早で作りました。MacOSにデフォルトで入っているNumbersで表を作りました。
- 面倒なのはWBSのナンバリングですが、空欄かどうかを判定して自動に採番する1行数式です。その紹介です。番号は各担当と進捗話するなど会話に重要なので必須要件でした。
- 前提としてWBSの構造は最初の3列が大項目、中項目、小項目の数字で次の3列が大項目、中項目、小項目の項目の中身になっています。空行はなしで、空欄は上の項目に同じと言う意味とします。
- 初項(初期値)は1,1,1とします(0,0,0でも構いません)。
- 大項目の数式です。A22にいるとして、大項目の欄(D22)が空欄でなければインクリメントします。
A22=IF(NOT(ISBLANK(D22)),A21+1,A21)
- 中項目の数式です。B22にいるとして、E22の欄が空欄で大項目(A21とA22)に変化がなければインクリメントし、大項目に変化があれば1にクリアします。それだけの数式です。
AND
は引数にとるとか、等しいかの判定は=
だったりマニュアル斜め読みしました。C欄はB欄のコピペです。
B22=IF(AND((A21=A22),NOT(ISBLANK(E22))),IF(AND((A21=A22),ISBLANK(E22)),B21,B21+1),IF(NOT(A21=A22),1,B21))
- その例です。CSVをTyporaで貼り付けてmakedownで書いてみました(例、部分)。
大 | 中 | 小 | 大項目 | 中項目 | 小項目 |
---|---|---|---|---|---|
1 | 1 | 1 | ユーザ対応 | サービス規約 | 利用規約の策定 |
1 | 1 | 2 | プライバシーポリシーの策定 | ||
1 | 2 | 1 | ユーザの認知向上 | XXX | |
1 | 2 | 2 | 告知メール | ||
1 | 2 | 3 | Facebookでの告知 | ||
1 | 2 | 4 | twitterでの告知 | ||
1 | 2 | 5 | 学会での告知 | ||
1 | 2 | 6 | 国際会議での告知 | ||
1 | 3 | 1 | すぐ謝れる準備をしておく | サービスダウンの検知 | |
1 | 3 | 2 | サービスダウンの告知(twitter, Foocebook, GitHub!) | ||
1 | 3 | 3 | ダウン時のDNSのCNAMEの変更 | ||
2 | 1 | 1 | インフラ | ドメイン名取得 | www.xxx.com |
2 | 2 | 1 | VPSレンタル | XXX |
- 何かのお役に立てれば嬉しいです。
PS
- Numbers -> excelで保存 -> googleスプレッドシートで読み込んだら数式はそのまま保存されていました。googleスプレッドシートでも大丈夫そうです。表題を変更しました。ということでopenofficeでもいけました。excelは持っていないのでわかりませんが多分同じ文法なのでしょう。