プロジェクト管理に欠かせないガントチャート。専用ツールもありますが、Excelなら追加費用なしで、自分の業務に合ったガントチャートを作成できます。
本記事では、Excelの条件付き書式と関数を使ったガントチャートの作り方を、初心者にもわかるよう手順を図解。進捗率をデータバーで表示する方法、日付・曜日の自動計算、土日祝の色分けまで、実務で使えるテクニックを網羅します。
この記事でわかること
Excelでガントチャートを一から作る方法(条件付き書式)
進捗率をデータバーで視覚化する方法
日付・曜日・土日祝日を自動設定する方法
当日ラインを自動表示する方法
Microsoft公式テンプレートの活用方法
ガントチャート専用ツールとの比較
この記事の目次
ガントチャートとは?基本を理解する
Excelガントチャートの作り方【基本編】
進捗率をデータバーで表示する方法
当日ラインと祝日の自動表示
ガントチャートの応用テクニック
Excelガントチャートのテンプレート活用
ガントチャート専用ツールとの比較
よくあるトラブルと対処法
ガントチャートをVBAで自動生成する方法
まとめ
この操作、VBAで一瞬で自動化できます
まずは関数の使い方を解説し、最後にVBA自動化コードも紹介します
Sub ガントチャート生成()
Dim ws As Worksheet
Set ws = ActiveSheet
Dim i As Long
For i = 2 To 5
Dim startCol As Long , endCol As Long
startCol = ws.Cells(i, “B” ).Value
endCol = ws.Cells(i, “C” ).Value
Dim j As Long
For j = startCol To endCol
ws.Cells(i, j + 3).Interior.Color = RGB (33, 115, 70)
Next j
Next i
MsgBox “ガントチャートの生成が完了しました”
End Sub
▼ 下のデモで実行結果を確認できます
マクロを実行する
実行中…
完了!
📊
プロジェクト計画.xlsx – Excel
A B C D E F G H
タスク
開始日
終了日
1週
2週
3週
4週
5週
企画
1週
2週
設計
2週
3週
開発
3週
5週
テスト
4週
5週
準備完了
100%
4件のタスクからガントチャートが自動生成されました!
☝ 日付データを使えばより正確なスケジュール管理が可能です
↻ リセットして再実行
ガントチャートとは?基本を理解する
ガントチャートとは、プロジェクトのタスク(作業項目)を横棒グラフで時系列に並べ、スケジュール全体を視覚的に把握するための図表です。
ガントチャートの構成要素
ガントチャートの構成要素
要素 説明 タスク名 作業項目の名前(縦軸に配置) 開始日・終了日 タスクの開始日と完了予定日 バー(横棒) タスクの期間を視覚的に表示 進捗率 タスクの完了割合(0%〜100%) マイルストーン 重要な節目(納品日、レビュー日等) 当日ライン 今日の日付を示す縦線
Excelでガントチャートを作るメリット・デメリット
メリット デメリット 追加費用なし(Excelさえあれば) 手動設定が必要(関数・条件付き書式) 自由にカスタマイズ可能 大規模プロジェクトには不向き 社内共有が容易(Excelは普及率が高い) リアルタイム更新は難しい 印刷しやすい 依存関係の管理が複雑
Excelガントチャートの作り方【基本編】
ステップ1: シートの骨組みを作成する
A列〜E列にタスク情報、F列以降に日付を配置します。
列 内容 例 A列 No. 1, 2, 3… B列 タスク名 要件定義, 設計, 開発… C列 開始日 2026/3/1 D列 終了日 2026/3/15 E列 進捗率 50% F1〜 日付(横軸) 3/1, 3/2, 3/3…
ステップ2: 日付と曜日を自動入力する
F1セルに開始日を入力し、G1セルに =F1+1 と入力して右方向にコピーします。
曜日の自動表示 :
F2セルに =TEXT(F1,"aaa") と入力(「月」「火」…と表示)
月の表示 :
F3セルに =IF(DAY(F1)=1,TEXT(F1,"m月"),"") と入力(月初のみ「3月」と表示)
ガントチャートの核となる設定です。
条件付き書式でバーを表示する仕組み
バーを表示するセル範囲を選択(例: F4:AJ20)
「条件付き書式」→「新しいルール」→「数式を使用」
数式: =AND(F$1>=$C4,F$1<=$D4)
書式: 背景色を青(#4472C4等)に設定
OK
この数式の意味:
F$1 = 列の日付(行は固定、列は可変)
$C4 = タスクの開始日(列は固定、行は可変)
$D4 = タスクの終了日(列は固定、行は可変)
日付が開始日以降かつ終了日以下の場合にバーを表示
ステップ4: 土曜・日曜の列に色を付ける
日付行のセル範囲を選択
条件付き書式 → 数式: =WEEKDAY(F$1,2)=6 → 背景色: 薄い青(土曜日)
追加ルール → 数式: =WEEKDAY(F$1,2)=7 → 背景色: 薄いピンク(日曜日)
進捗率をデータバーで表示する方法
ガントチャートで最も需要の高い機能が「進捗率の視覚化」です。
方法1: セル内データバーで進捗率を表示
進捗率のセル(E列)を選択
「条件付き書式」→「データバー」→ 好みの色を選択
「ルールの管理」→「ルールの編集」
最小値: 数値「0」、最大値: 数値「1」に設定
「棒のみ表示」にチェック → 数値と棒の両方表示が可能
タスクバーの上に進捗率分だけ色を変えて重ねる方法です。
ルール1(進捗済み部分 = 濃い青) :
=AND(F$1>=$C4,F$1<=($C4+($D4-$C4)*$E4))
ルール2(未進捗部分 = 薄い青) :
ルールの優先順位 : ルール1を上位に配置(濃い青が優先)
この方法により、タスクバー内で「完了部分」と「残り部分」が色分けされ、進捗状況が一目でわかります。
方法3: 進捗率に応じた色のグラデーション
条件付き書式のカラースケールを使って、進捗率に応じた自動グラデーションを設定できます。
進捗率セル(E列)を選択
「条件付き書式」→「カラースケール」→ 赤→黄→緑
0%=赤、50%=黄、100%=緑 で自動グラデーション
当日ラインと祝日の自動表示
TODAY関数で当日ラインを自動表示する
条件付き書式で「今日の日付」の列を強調します。
ガントチャートエリア全体を選択
条件付き書式 → 数式: =F$1=TODAY()
書式: 左罫線を赤の太線に設定(または背景を薄い黄色)
ファイルを開くたびにTODAY()が更新されるため、当日ラインが自動で移動します。
祝日を自動で色分けする
祝日リストを別シートに用意し、条件付き書式で祝日列を色付けします。
数式 :
=COUNTIF(祝日リスト!$A:$A,F$1)>0
書式 : 背景色を薄いピンク
ガントチャートの応用テクニック
マイルストーンを表示する
特定の日付にマイルストーン(◆マーク)を表示する方法:
タスク情報にF列「マイルストーン日」を追加
条件付き書式 → 数式: =AND(F$1=$F4,$F4<>"")
書式: セルに「◆」を表示、背景色を赤
タスクの依存関係を矢印で示す
Excel の図形(矢印)を使ってタスク間の依存関係を視覚化できます。
手順 :
「挿入」→「図形」→「矢印」を選択
先行タスクのバー末尾から後続タスクのバー先頭へ矢印を描画
矢印の書式: 色=グレー、太さ=1.5pt
複数プロジェクトを1つのガントチャートで管理
行をグループ化してプロジェクト単位で折りたたみ可能にする方法:
各プロジェクトのタスク行を選択
「データ」→「グループ化」
[+][-]ボタンでプロジェクト単位の展開/折りたたみが可能
Excelガントチャートのテンプレート活用
Microsoft公式テンプレートを使う
Excelには公式のガントチャートテンプレートが用意されています。
手順 :
Excelを開く →「新規」をクリック
検索ボックスに「ガントチャート」と入力
テンプレートを選択 → 「作成」
公式テンプレートの特徴 :
日付入力だけでバーが自動表示
進捗率のデータバーが設定済み
印刷用レイアウトが最適化済み
テンプレートをカスタマイズするコツ
公式テンプレートをそのまま使うと業務に合わない場合があります。
カスタマイズポイント :
列の追加: 担当者、優先度、備考欄を追加
日付範囲: プロジェクト期間に合わせて調整
色テーマ: 部門やカテゴリごとに色を変更
祝日: 日本の祝日リストを追加して色分け
Excelで十分な場合と、専用ツールを検討すべき場合の判断基準です。
Excelが向いているケース
チームメンバーが5人以下の小規模プロジェクト
タスク数が50個以下
社内でExcelが標準ツール
印刷して壁に貼りたい
追加費用をかけたくない
10人以上の大規模チーム
リアルタイムでの進捗共有が必要
タスクの依存関係が複雑
複数プロジェクトを同時管理
ツール名 料金 特徴 Microsoft Project 有料(月額) Excel連携が強み Backlog 有料(月額) 日本語対応、タスク管理一体型 Asana 無料プランあり チーム向け、ガントチャート機能あり Notion 無料プランあり 柔軟なカスタマイズ Redmine 無料(OSS) 開発プロジェクト向け
よくあるトラブルと対処法
原因1 : 数式の参照($の位置)が間違っている
対処 : =AND(F$1>=$C4,F$1<=$D4) のように行・列の固定を確認
原因2 : 日付セルがテキスト形式になっている
対処 : 「区切り位置」機能で日付に変換
ガントチャートの日付範囲を変更したい
方法 : F1の開始日付を変更 → G1以降が自動更新
月単位にしたい場合 : =EDATE(F1,1) で月単位の横軸に変更
印刷時にガントチャートが切れる
対処1 : 「表示」→「改ページプレビュー」で印刷範囲を確認
対処2 : 「ページレイアウト」→「印刷の向き」を「横」に変更
対処3 : 「ページレイアウト」→「拡大縮小印刷」で「1ページに収める」
進捗率を変更してもバーの色が変わらない
原因 : 条件付き書式のルール優先順位が逆
対処 : 「条件付き書式ルールの管理」で進捗済み(濃い色)ルールを未進捗(薄い色)ルールより上に配置
ガントチャートをVBAで自動生成する方法
ガントチャートの作成をVBAマクロで自動化すれば、タスクデータから一括でスケジュール表を生成できます。
' ガントチャートを自動生成するマクロ
Sub ガントチャート生成()
Dim ws As Worksheet
Set ws = ActiveSheet
Dim i As Long
For i = 2 To 5
Dim startCol As Long, endCol As Long
startCol = ws.Cells(i, "B").Value
endCol = ws.Cells(i, "C").Value
Dim j As Long
For j = startCol To endCol
ws.Cells(i, j + 3).Interior.Color = RGB(33, 115, 70)
Next j
Next i
MsgBox "ガントチャートの生成が完了しました"
End Sub
VBAマクロの実行結果は記事冒頭のインタラクティブデモ で確認できます。ボタンを押すとアニメーションで動作をシミュレーションします。
💻
操作を体験してみよう!
実際の操作手順をクリックして体験できます。各ステップをクリックしてみましょう。
まとめ
Excelでガントチャートを作成する方法をまとめます。
機能 使用する機能 難易度 タスクバー表示 条件付き書式 + AND関数 ★★☆ 進捗率表示 データバー / 条件付き書式 ★★☆ 土日祝日の色分け 条件付き書式 + WEEKDAY ★☆☆ 当日ライン 条件付き書式 + TODAY ★☆☆ 日付・曜日の自動設定 TEXT関数 ★☆☆ テンプレート活用 Microsoft公式 ★☆☆
小規模プロジェクトならExcelのガントチャートで十分実用的です。条件付き書式と進捗率の設定をマスターすれば、追加コストなしでプロジェクト管理が行えます。
Excel業務の自動化
その手作業、自動化しませんか?
VBA開発・GAS連携・Webアプリ化まで、 業務に合わせた最適な自動化をご提案します。
1,600部 ツール販売実績
15年 製造業の業務経験
無料で相談する →
初回相談無料・お見積りだけでもOK
期間限定でChatGPT✖︎Googleスプレットシートのコンテンツ配布中!
LINEでExcelを気軽に学べる
Profile
大手メーカーに15年以上勤務。製造部門で海外拠点の立ち上げ支援や、現場責任者として採算管理・納期管理・設備オペレートを経験。
2023年にDX人材育成プログラム第1期生として活動後、現在は製造現場のスケジュール運用を支えるアプリの企画・開発をメインに活動中。工程表示表作成の内製化SaaSを構築し、年間1,300万円のコスト改善を実現。
Excelによる業務改善で年間240時間の残業削減を達成した経験を活かし、ブログやSNSでも情報発信しています。
プロフィールを読む
ABOUT ME
大手メーカーに15年以上勤務。製造部門で海外拠点の立ち上げ支援や、現場責任者として採算管理・納期管理・設備オペレートを経験。
2023年にDX人材育成プログラム第1期生として活動後、現在は製造現場のスケジュール運用を支えるアプリの企画・開発をメインに活動中。工程表示表作成の内製化SaaSを構築し、年間1,300万円のコスト改善を実現。
Excelによる業務改善で年間240時間の残業削減を達成した経験を活かし、ブログやSNSでも情報発信しています。