さくっとエクセレートさくっとエクセレート

WBS組込みExcelガントチャートの作り方【タスク洗い出し・整理特化】

Thumbnail for WBS組込みExcelガントチャートの作り方【タスク洗い出し・整理特化】

本記事では、Excel(エクセル)タスクの洗い出し・整理がしやすいWBSガントチャート を作る方法を解説します。

ポイントは、Excelの テーブル機能を使うことです。テーブル機能を活用したガントチャートでは、以下のようなメリットがあり、タスクの洗い出し・整理がしやすくなっています。

  • タスクの追加・削除・修正をしたときに、関数や書式の設定範囲が自動的に調整されるため、再設定が不要になる。
  • タスクの並び替えやフィルタリングにも対応する。
  • 条件付き書式を活用することで、タスクの階層(親子関係)もわかりやすくなる。

テーブル機能を使わない場合

テーブル機能 を使わないガントチャートでは、
タスクを追加するたびに「既存の行をコピペし、中身の修正」という手順が必要になります。
並び替え時には、数式範囲や参照ずれが発生する可能性も生じます。

吉峰
吉峰

テーブル機能を使ったガントチャートでは、タスクや期間の修正が簡単になるので「最初に作ったが、ファイルが壊れそうで更新していない」ということが避けられます。

Excelのバージョン

本記事は、Excel 2024(ローカルまたは共有フォルダでの運用) を前提に作成しています。
環境によっては、UIなどの細かな点が異なる場合があります。

※ 本記事の見出しでは「エクセル」本文では「Excel」と表記を統一しています。

前知識|ガントチャートとは?WBSとは?

WBSガントチャートとは、 WBSガントチャート を組み合わせたものです。WBSやガントチャートとは何か、WBSガントチャートを使用するメリットについて説明します。

 

ガントチャートとWBSの違い・関係性

WBSとガントチャートを端的に言うと、次の通りです。

  • WBS : 必要なタスクを洗い出し、整理した表
    • 要素:タスク内容、タスクの階層構造
    • 役割:「何をやるか」を決める
  • ガントチャート : タスクのスケジュールを可視化したチャート
    • 要素:開始日、終了日、期間、担当者
    • 役割:「いつやるか」を決める

WBS (Work Breakdown Structure)は作業分解構成図とも言い、タスクを漏れなく分解して構造化された表・リスト・図のことです。表そのもののことではなく、表を作成する手法自体をWBSと呼ぶこともあります。

ガントチャート は、各タスクのスケジュールを可視化したもので、開始日や終了日をすぐに把握するのに役立ちます。縦軸にタスクを並べ、横軸に日時が表示されているものが一般的です。

WBS によって必要なタスクを洗い出し、ガントチャート で各タスクの期間を可視化して、プロジェクト全体のスケジュールを管理します。WBSとガントチャートを同一表にまとめる形式を便宜上 WBSガントチャート と呼びます。

WBS部分とガントチャート部分

現場では「WBS」と「ガントチャート」の区別はあいまい

ビジネスの現場では、WBSガントチャートの呼び名の区別があいまいなことが多いです。
WBSガントチャートのことを、単に「WBS」や「ガントチャート」と呼ぶこともあります。
他にも「タイムライン」「ガントチャート・ビュー」「工程表」などと言うこともあります。

ここでは「WBSガントチャートに統一します。

 

WBSガントチャートのメリット・活用方法

WBSガントチャートを使ってタスクとスケジュール管理を行うメリットは以下の通りです。

  • タスクの抜け漏れ、ダブりをなくせる
  • 作業・スケジュールの全体像を把握できる
  • 見積もりの精度が上がる
  • 役割分担が明確になる

設計|テーブル機能活用と階層タスクの表現

WBSガントチャートでは、主に テーブル機能 を活用し、補助的に 条件付き書式 も利用します。

 

なぜテーブル機能+条件付き書式を使用するのか

WBSガントチャートでテーブル機能と条件付き書式を使用する理由は、「タスクの追加・並び替えに強くなる」「階層が見やすくなり、タスクの洗い出し・整理がしやすくなる」というメリットがあるからです。

【テーブル機能】

  • ✅ 列全体に関数・書式設定が自動的に適用
  • ✅ フィルタ・並び替えがすぐに使える

→ タスクの追加・並び替え時でも、全体の修正が不要になる

» テーブル機能の他のメリットを見る

【条件付き書式】

  • ✅ タスクの階層が見やすくなる

→ タスクの洗い出し・整理がしやすくなる

完成後のイメージと機能
 

テーブル機能の組み込み方

テーブル機能を使う(テーブル化する)場合、見出しに制限があります。

【テーブルの見出しの制限】

  • ❌ 数式が使えない
  • ❌ 文字列扱いになる
  • ❌ 複数行は見出しにできない(セル内改行なら可)

制限に対する対応として、時間軸のみテーブルの外に配置 します。テーブルの見出しには連番(0,1,2,...)を格納し、テーブル外から参照して時間軸に利用する形をとります。

時間軸のみテーブル外
 

条件付き書式による階層タスクの表現方法

条件付き書式は、タスクの階層を視覚的に表現するのに利用できます。ここでは、タスクの階層の深さ(階層Lv)の数値をデータバーで表現する方法を使用します。

タスクNo(例:1.2.2から階層Lvをデータバー表示する流れは次の通りです。

  1. 1.2.2の記号 .の数を数える。
  2. 階層Lv = 記号数 + 1とする。
  3. 条件付き書式を使い、階層Lvをデータバー表示する。
Noの分解 ~ 階層Lvをデータバー表示のロジック
吉峰
吉峰

最上位Lvの数値(上の例では1を使って、大分類(フェーズなど)ごとに色分けすることもできます。

作成手順|WBSガントチャートの作り方

WBSガントチャートの作り方は次の通りです。

 

工程1 WBSの作成

タスクとタスクNoを記入するWBS部分を作成します。

STEP1

Noタスク名を記入する

  • No : 例 1.2.2など(.区切りで親子関係を示す)
  • タスク名 : 例 タスクAなど
Noとタスク名を記入する
STEP2

テーブル化する

テーブル化する

テーブルのデザインの変更方法

テーブルデザインタブのテーブルスタイル欄やテーブルスタイルのオプション欄から、
テーブルのデザインが変えられます。
ガントチャートでは、縞模様(行)はOFFにしておく方が見やすくオススメです。

 

工程2 ガントチャートの作成

ガントチャート部分を作成します。

2-1. タスク情報の項目追加

STEP1

テーブルにタスク情報の項目を追加する

  • 開始日 : 2025/04/04など
  • 終了日 : 2025/04/11など
  • 担当者 : 佐藤など
  • ステータス : 完了 など
タスク情報の項目を追加する
STEP2

テーブル外にプロジェクト開始日を記入する

  • プロジェクト開始日 : 2025/04/01など
プロジェクト開始日を記入する

2-2. 時間軸の作成

STEP1

テーブルに項目 , , 0 を追加

※ テーブルには空白の見出しや重複する見出しを設定できないため、 (半角スペース1つ), (半角スペース2つ)を入力します。

項目  ,   , 0 を追加する
STEP2

テーブルに項目 1, 2, ... を追加

0を横にオートフィルします。

項目 1, 2, ... を追加する
STEP3

テーブル上部に行 SN(シリアル値)を追加

=L6*1 + $F$2

  • L6: 列 0の最初のセル
  • F2: プロジェクト開始日
  • *1: 文字列を数値に変換
    • ※ 時間単位は「日」の場合 1「週」の場合 7 になる。
シリアル値を計算する

横方向にコピーする数式では構造化参照を使わない

横方向への数式コピーは、構造化参照に不向きなため、セル参照の形式を使用します。
構造化参照を使った数式を横方向にコピーしても、参照する横の位置(列)は固定されたままになってしまうためです。

STEP4

テーブル上部に行 , , , 曜日 を追加

  • : =TEXT(L$1, "'yy")
  • : =TEXT(L$1, "m")
  • : =TEXT(L$1, "d")
  • 曜日 : =TEXT(L$1, "aaa")

L1: SN行の最初

年月日を表示する

2-3. チャート領域の作成

STEP1

セルに数式を設定

数式を設定し、チャートで塗りつぶしするセルのみに数値を表示させます。

=IF(AND([@開始日]<=L$1, L$1<=[@終了日]), 1, "")

  • 1: 条件を満たす場合の出力値. 空白以外なら何でもよい。
数式を設定する
STEP2

セルに条件付き書式を設定

条件付き書式を設定し、数値表示されたセルのみを塗りつぶします。

  • 条件 : セルが空白の値でないとき
  • 書式 : 塗りつぶし(背景色)
    • 色は好みで
条件付き書式を設定する
STEP3

セルに表示形式を設定

表示形式を設定し、数値を非表示にします。

  • 種類 : ユーザー定義
  • 表示形式 : ;;;
表示形式を設定する
 

工程3 階層Lvの視覚化

WBS部分のタスク項目の近くに、新規列を作成し、階層Lvをバー表示させます。

吉峰
吉峰

セルを黒塗りし、階層Lvが大きいほど白いデータバーで隠していく方法を使っています。

STEP1

テーブルの左端に新規列階層Lvを作成

テーブルの左端に新規列階層Lvを作成

テーブルの左端に新規列を作成する方法

テーブルの右側や下側に列や行を追加するのは簡単ですが、
左端に列を追加するには一手間必要です。

  1. テーブルの中に新規列を挿入する。
  2. 見出しを書き換える(最後でも良い)
  3. 新規のテーブル列を選択状態にして、テーブル左端にドラッグ&ドロップする。
階層Lvを計算する
STEP2

階層Lvに数式を設定

  • 階層Lv : =LEN([@No]) - LEN(SUBSTITUTE([@No], ".", ""))+1
    • +1は、Lvの最小値を1とするための調整値
階層Lvを計算する
STEP3

階層Lvの列に背景(塗りつぶし)を設定

  • 背景色:黒
STEP4

階層Lvの列にデータバー(条件付き書式)を設定

  • 方向:右から左へ
  • 色:白
  • 棒のみ表示:チェック
  • 最大値: 数式 > =MAX($C$7:$C$7) + 0.5
    • +0.5は、LV値最大のセルのデータバー長さを0にさせないための調整値
    • ※ 2つ目の$C$7は、テーブルの行数が増えると自動的に拡張される
階層Lvの列にデータバー(条件付き書式)を設定

使い方|タスクの洗い出しから閲覧までの方法

WBSガントチャートの使い方の流れと、設定の変更方法について説明します。

 

WBSの作成・修正

タスクの洗い出し・整理を行い、WBSを作成するおおまかな手順は次の通りです。

  1. タスクを洗い出す :

    プロジェクトに関わるタスクをタスク名列にすべて書き出します。
    粒度(週間単位など)を決めてタスクを分解するとよいでしょう。

  2. タスクを整理する :

    No列を使い、各タスクに番号を割り振ります。
    親子関係にあるタスクは、 1.2, 1.2.1 のように.(ピリオド/ドット)記号で区切った番号を割り振ります。
    同じ分類・グループに属するタスクは、上位のLv番号を共通にし、整理していきます。

    No列は文字列として認識させたいので、表示形式を「文字列」に設定するか、
    セル入力時に先頭に'(アポストロフィ/シングルクォーテーション)を記入します。

吉峰
吉峰

プロジェクト進行中に行っても全く問題ありません。関数や書式設定は壊れにくいので、どんどんタスク情報を更新してください。

タスク追加はテーブルの下に書き加えるだけ

テーブル機能を使っているため、
タスク(行)を追加するときには 「既存の行のコピペ」は不要 です。

テーブルの最後の行の下に記入するだけで、自動的にテーブルが拡張し、
数式や書式設定も調整されます。

 

ガントチャートの作成・修正

作成したWBSの日程をガントチャートに表示し、スケジュールを視覚的に把握できるようにする手順は以下の通りです。

  1. 開始日、終了日、担当者を記入する :

    各タスクの開始日終了日担当者を記入します。
    開始日終了日に日付を記入すると、ガントチャートにバーが表示されます。

  2. ステータスの更新 :

    タスクの進行状況に応じてステータスの値を書き換えます
    未着手進行中確認中完了など)
    ステータスを更新していくことで、残りのタスクがわかりやすくなります。

 

閲覧・確認

テーブルの見出しにあるフィルタボタンから、タスクの並び替えやフィルタリングができます。WBSガントチャートを閲覧したり、タスクの確認をするときに便利です。

フィルタボタン
吉峰
吉峰

特定のメンバーのみ のタスクを表示」完了したタスクは除外 して表示」なども簡単にできます。

まとめ|WBSガントチャートはタスク項目を書き換えやすい

Excelの テーブル機能や条件付き書式設定を活用 することで、WBS作成(タスクの洗い出し・整理)がしやすいガントチャートが作成できます。

Excelでガントチャートを作成する基本的な方法や、実装できる機能についてはこちらにまとめています。色付けを工夫して、さらに見やすくすることも可能です。