ガントチャートの作り方|Excel・スプレッドシートのテンプレート構成と数式
「ガントチャートを作りたいが、専用ツールを導入するほどではない」「まずは手元のExcelやGoogleスプレッドシートで作りたい」。この記事では、そのまま流用できるテンプレートの列構成と作成手順に加えて、条件付き書式でバーを自動描画する数式、Excelとスプレッドシートの使い分け、そして運用が形骸化しないための更新ルールまで解説します。
ガントチャートとは?何が見えるようになるのか
ガントチャートは、縦軸にタスク、横軸に時間を取り、各タスクの開始日から終了日までを横棒(バー)で表した工程管理表です。1910年代にアメリカの経営コンサルタント、ヘンリー・ガントが考案した手法で、100年以上経った現在もプロジェクト管理の標準フォーマットとして使われ続けています。
単なるタスク一覧との最大の違いは、「重なり」が見えることです。
- 誰の作業がいつ集中するのか(負荷の偏り)
- どのタスクが遅れると、どの後続作業が止まるのか(依存関係)
- 全体のどこに余裕が残っているのか(バッファの所在)
一覧表では日付を目で追わないと分からないこれらの情報が、バーの位置関係だけで把握できます。関係者への共有資料としても、口頭での補足説明を大幅に減らせます。
WBSとの違い:先に作るのはどちらか
混同されやすいのがWBS(Work Breakdown Structure)です。役割は明確に分かれています。
- WBS:「何をやるか」を漏れなく階層分解したもの。時間軸は持たない
- ガントチャート:分解済みのタスクに「いつやるか」を割り当てたもの
順序としては、WBS→ガントチャートです。WBSを飛ばしていきなりガントチャートを書き始めると、思いついたタスクだけが並び、抜けた作業が後から割り込んでスケジュール全体を押し出すことになります。まずタスクを洗い出し、それから日付を入れる。この順番を守るだけで、計画の精度は大きく変わります。詳しくはWBSの作り方をご覧ください。
作り始める前に、用途別の3つの型から選ぶ
ガントチャートは目的によって必要な列が変わります。作り始める前に、次のどれに当たるかを決めておくと、後から列を足す手戻りがなくなります。
- シンプル型(日次・1〜2ヶ月):タスク名と期間だけの最小構成。短期の制作案件や単発施策向け
- 標準型(日次・3〜6ヶ月):担当者・進捗率・ステータス・先行タスクを含む。社内プロジェクト全般に対応
- マーケ施策型(月次・年間):キャンペーン単位で束ね、予算・実績・KPI欄を追加したもの。年間の施策カレンダーとして使えます
以降は、最も汎用性の高い標準型を前提に解説します。
テンプレートの列構成
標準型の列はA列からK列までの11列で、L列以降を日付ヘッダーに充てます。この構成をそのまま流用してください。
- A:No―連番。タスクを参照するときのID
- B:大分類―WBSの第1階層。「要件定義」「制作」「入稿」などのフェーズ名
- C:タスク名―担当者が読んですぐ動ける粒度で。動詞で終える
- D:担当者―1タスク1名。複数名を書くと責任が曖昧になります
- E/F:開始日・終了日―バーの描画元になる列。ここだけは必ず日付形式で入力する
- G:日数―NETWORKDAYS関数で営業日ベースの自動計算
- H:進捗率―0〜100%。25%刻みで十分です
- I:ステータス―未着手/進行中/レビュー中/完了/遅延。入力規則(データの入力規則)でプルダウン化しておくと表記ゆれを防げます
- J:先行タスク―このタスクの前に完了している必要があるタスクのNo
- K:備考―外部依存や前提条件のメモ
「先行タスク」列は省略されがちですが、これがないと遅延が発生したときに影響範囲を追えません。3タスク以上が連鎖するプロジェクトであれば、必ず入れておくべき列です。
作成手順:5ステップ
- タスクを洗い出す:フェーズごとに分解し、大分類とタスク名の列を先に埋めます。この時点では日付を入れません
- 担当者を割り当てる:1タスク1名で確定させます。担当が決まらないタスクは、決めること自体をタスク化してください
- 期間を入れる:終了日から逆算するのではなく、着手可能な日から順に置いていきます。逆算で埋めると、机上では収まるが実行不可能な計画になりがちです
- 依存関係でずらす:先行タスク列を見ながら開始日を後ろに動かします。ここで初めて全体の所要期間が確定します
- マイルストーンとバッファを置く:中間レビューや承認日をマイルストーンとして固定し、その手前に全体の10〜20%のバッファを確保します
バーを自動描画する数式
ガントチャートのバーは、図形やセルの手塗りではなく条件付き書式で描くのが基本です。日付を書き換えるだけでバーが追従するため、更新の手間がほとんどかかりません。手順は次のとおりです。
1. 日付ヘッダーを作る
行見出しの右隣(標準型ではL列)から、1行目に日付を並べます。先頭セルに開始日を入れ、隣のセルに「=前のセル+1」を入力して右方向にコピーすれば連番になります。こうしておけば、先頭セルの日付を変えるだけでカレンダー全体をスライドできます。表示形式をユーザー定義の「d」にすると日付の数字だけが表示され、列幅を2〜3ポイントまで詰められます。
2. 条件付き書式でバーを塗る
バーを描く範囲(L2以降)を選択し、「数式を使用して書式設定するセルを決定」に次の式を設定します。E列=開始日、F列=終了日、L列以降=日付ヘッダーという前提です。
=AND(L$1>=$E2, L$1<=$F2)
塗りつぶし色を指定すれば、開始日から終了日までのセルが自動的に色付きバーになります。ポイントは絶対参照の付け方です。行番号(1)の前に$を付けて日付行を固定し、列記号(E・F)の前に$を付けて日付列を固定します。この2点が崩れると全体がずれるので注意してください。
3. 状態ごとに色を分ける
同じ要領でルールを追加していきます。進捗率はH列です。
- 完了したタスクをグレーにする:=AND(L$1>=$E2, L$1<=$F2, $H2>=1)
- 遅延しているタスクを赤くする:=AND(L$1>=$E2, L$1<=$F2, $F2<TODAY(), $H2<1)
- 土日をグレーにする:=WEEKDAY(L$1,2)>5
- 当日に縦線を引く:=L$1=TODAY()
条件付き書式は上に設定したルールが優先されます。当日→遅延→完了→通常のバー→土日の順に並べると、見たい情報が隠れません。
ExcelとGoogleスプレッドシート、どちらで作るか
ここまでの列構成も数式も、両方でそのまま使えます(NETWORKDAYSも条件付き書式も共通です)。選ぶ基準は機能ではなく、共有の仕方です。
- Excelが向くケース:関係者が社内に限られる/既存の見積書や工数表と数式で連携させたい/オフライン環境で扱う必要がある
- スプレッドシートが向くケース:外部パートナーを含めて共有する/複数人が同時に更新する/変更履歴を残したい
判断軸はシンプルで、更新する人が2人以上いるならスプレッドシートです。Excelファイルをメールやチャットで回すと、必ず版が分岐します。「最新版_修正_final2.xlsx」が生まれた時点で、そのガントチャートは信頼できる資料ではなくなります。
運用でつまずく3つのパターン
粒度が細かすぎてメンテナンスできない
1日未満のタスクまで書き込むと、更新工数がプロジェクト管理そのものを圧迫します。目安は1タスク=2〜5営業日。それより小さい作業は担当者のToDoに任せ、ガントチャートには載せません。
作った直後から更新されない
最も多い失敗です。原因は更新のタイミングが決まっていないことにあります。週次定例の冒頭10分を進捗率の更新に充てる、といったルールを、チャートを作った日に同時に決めてしまってください。更新されないガントチャートは、実態と乖離した瞬間に判断を誤らせる材料に変わります。
バッファがなく、1つの遅延が全体に波及する
各タスクの見積もりに個別のバッファを埋め込むと、余裕はその期間内で使い切られてしまいます。バッファは個別タスクではなく、フェーズの末尾にまとめて置いたほうが機能します。全体に対して10〜20%が目安です。
Excel管理の限界と、次に検討すべきこと
Excelやスプレッドシートのガントチャートは、単一プロジェクトであれば十分に機能します。一方で、次のような状況になると管理コストが急に跳ね上がります。
- 施策が10本を超え、ファイルが分散して横断的な進捗が見えない
- 予算・実績とスケジュールが別ファイルで、突合に工数がかかる
- 複数プロジェクトを跨いだメンバーの稼働状況が把握できない
「テンプレートの更新作業に時間を取られている」と感じ始めたら、それはツールを見直すサインです。Xtrategyでは、施策のスケジュールと予算・KPIを同一画面で管理し、複数キャンペーンの進捗を横断して確認できます。キャンペーン単位の管理方法についてはマーケティングキャンペーン管理テンプレートも併せてご覧ください。
まとめ
- ガントチャートは「いつ」を可視化する工程表。先にWBSで「何を」を洗い出す
- 列構成の要は、開始日・終了日・担当者・進捗率・先行タスクの5列
- バーは条件付き書式(=AND(L$1>=$E2, L$1<=$F2))で自動描画できる
- 更新者が2人以上ならGoogleスプレッドシートで作る
- 作った日に「いつ更新するか」を決めることが、形骸化を防ぐ唯一の方法