約 22 分で読めます
編集部イチオシタスク・担当・期日をひとつのボードで見える化
- かんばん・ガントチャート・カレンダーなど複数ビューをワンクリックで切替
- 日本語UI・日本語サポート対応(東京オフィスあり)
- 通知・担当割り当て・期日リマインドを自動化
- ダッシュボードで複数プロジェクトの進捗を一括把握
スプレッドシートのガントチャートは、公式テンプレート・タイムラインビュー・条件付き書式の自作という3つの方法で作れます。本記事ではコピペで使える数式と、ツール移行の判断基準まで解説します。
1. スプレッドシートのガントチャート | 3つの作り方と向き不向き
ガントチャートとは、縦軸にタスク、横軸に日付を置き、各タスクの期間を横棒(色帯)で表した進捗管理表です。エクセルでも同じことはできますが、スプレッドシートが選ばれる理由は「無料で使える」「インストール不要」「URLを共有すれば全員が同じ最新版を見られる」の3点に尽きます。
作り方は大きく3つあります。それぞれ、かかる時間も自動化の度合いも違います。
| 作り方 | 準備時間の目安 | 自動化の度合い | 向いているチーム |
|---|---|---|---|
| 公式テンプレートを使う | 15分 | 中(日付連動は組み込み済み) | とにかく今日中に形にしたい |
| タイムラインビューを使う | 10分 | 低(表示の切り替えのみ) | Google Workspace 契約済み |
| 条件付き書式で自作する | 60〜90分 | 高(好きな条件で色分け可能) | 自社の運用に合わせ込みたい |
タイムラインビューは、開始日・終了日の列を持つ表を「挿入 → タイムライン」で時間軸表示に切り替える機能です。設定はいちばん簡単ですが、Google Workspace のビジネス系プラン以上で使える機能のため、無料の個人アカウントでは表示できません。自分のアカウントでメニューに出てこない場合は、テンプレートか自作を選ぶことになります。

スプレッドシートで足りるか、専用ツールが必要かの判断
先に線引きをしておきます。次の3条件をすべて満たすなら、スプレッドシートで十分戦えます。
- タスク数が30件以下
- 同時に編集する人が8人以下
- プロジェクト期間が3か月以内
逆に、この基準を1つでも超えると、後述する「同時編集の衝突」「依存関係が組めない」という壁に必ずぶつかります。並行プロジェクトが3本を超えているなら、最初から専用ツールを検討したほうが結果的に早いです。工程の全体像をどう設計するかは工程管理の考え方が下敷きになるので、並行して押さえておくと迷いが減ります。

2. 条件付き書式で自作する | 5ステップで色帯を自動表示
ここからが本題です。セルを手で塗る「塗りつぶし職人」にならずに、開始日と終了日を入力するだけで色帯が自動で伸び縮みする作り方を、5ステップで組み立てます。
題材は、5人のマーケティングチームが3週間のキャンペーン企画を回すケースにします。タスクは「企画書作成」「クリエイティブ制作」「LP実装」「広告入稿」「効果測定の準備」の5本、担当は1人あたり1〜2本。まっさらなシートから始めて、最後には開始日を1日ずらすだけで5本すべての帯と進捗率が追従する状態まで持っていきます。

ステップ1:列構成を決める
左側に「タスク情報」、右側に「日付軸」を置く構成が基本です。列がぶれると後の数式がすべて壊れるので、最初に固定してしまいます。
| 列 | 項目 | 入力方法 |
|---|---|---|
| A | 大分類(フェーズ) | 手入力 |
| B | タスク名 | 手入力 |
| C | 担当者 | プルダウン |
| D | 開始日 | 日付形式で手入力 |
| E | 終了日 | 日付形式で手入力 |
| F | 工期(営業日) | 数式で自動 |
| G | 進捗率 | 手入力(0〜1) |
キャンペーンの例なら、A列は「企画」「制作」「配信」の3フェーズ、B列に先ほどの5タスク、C列に5人の名前をプルダウンで並べる形になります。I列以降がカレンダー領域です。タスクの粒度に迷ったら、タスクの定義を見直してから行を起こすと、後から作り直す手間がなくなります。
ステップ2:日付ヘッダーを自動生成する
I1 セルに次の式を入れると、プロジェクト開始日から90日分の日付が横方向に一気に展開されます。1セルずつドラッグする必要はありません。
=SEQUENCE(1,90,$D$3,1)
2行目には曜日を表示させます。I2 に =TEXT(I1,"ddd") を入れて右へコピーすれば、「月・火・水」が並びます。日付の表示が長すぎる場合は、表示形式のカスタム数値形式で d だけにすると1日1列でも読めます。列幅は24ピクセル前後が見やすい目安です。3週間の企画なら21列あれば足りるので、90を21に変えても構いません。
ステップ3:工期と進捗の数式を入れる
F3(1件目のタスクの工期。2行目は曜日行なので、タスクは3行目から)には営業日ベースの式を入れます。土日と祝日を除いて日数を数えるので、実態に近い工期になります。
=NETWORKDAYS(D3,E3,祝日!$A$2:$A$30)
別シート「祝日」に祝日の日付を縦に並べておくのがポイントです。単純な暦日数でよければ =DATEDIF(D2,E2,"D")+1 でも構いません。3週間=21日のキャンペーンでも、営業日で数えると実働は15日前後まで縮みます。この差を最初に見ておくと、後半の詰め込みを避けられます。
ステップ4:条件付き書式で色帯を描く
カレンダー領域 I3:CZ100 を選択し、「表示形式 → 条件付き書式 → カスタム数式」で次の式を登録します。ここが自作ガントチャートの心臓部です。
| 目的 | カスタム数式 | 書式 |
|---|---|---|
| タスク期間の色帯 | =AND(I$1>=$D3,I$1<=$E3) |
薄い青の背景 |
| 進捗済みの濃い帯 | =AND(I$1>=$D3,I$1<$D3+($E3-$D3+1)*$G3) |
濃い青の背景 |
| 土日をグレーに | =WEEKDAY(I$1,2)>5 |
グレーの背景 |
| 祝日をグレーに | =COUNTIF(祝日!$A:$A,I$1)>0 |
グレーの背景 |
I$1 は行だけ固定、$D3 は列だけ固定という複合参照がすべてです。これを間違えると、色帯が1行目にしか出なかったり、全セルが塗られたりします。うまく出ないときは、ほぼこの $ の位置が原因です。
条件付き書式はリストの上にあるルールが優先されます。「進捗済みの濃い帯」を「タスク期間の色帯」より上に置いてください。逆にすると、進捗の濃淡が薄い青に上書きされて見えなくなります。
ここまで登録すると、空白だった21列に5本の帯が並びます。「クリエイティブ制作」と「LP実装」が2日だけ重なっている、といった現場の無理が、この時点で目に見えるようになります。

ステップ5:今日基準線と遅延アラート
最後に、今日がどこかを一目で示す縦線を引きます。同じくカスタム数式で =I$1=TODAY() を登録し、書式は背景色ではなく「左枠線をオレンジの太線」にすると、色帯を隠さずに1本の縦線としてチャートを貫きます。この線より左に未完了の帯が残っていれば、それが遅延しているタスクです。
さらに、行全体を赤くするルールも入れておきます。A3:G100 を選択して次の式を登録します。
=AND($E3<TODAY(),$G3<1)
終了日を過ぎているのに進捗率が100%未満の行が、自動で赤くなります。週次の定例会議まで遅延に気づかない、という事態を防ぐ最低限の仕掛けです。こうした状態の共有方法は進捗状況の共有の型に沿って整えると、報告の手戻りが減ります。
3. 無料テンプレートの使い方 | 最初に直す5つの項目
自作が面倒なら、テンプレートギャラリーの「ガントチャート」や「プロジェクトのタイムライン」を開くのが最短です。スプレッドシートの新規作成画面右上の「テンプレートギャラリー」から選び、開いた時点で自分のドライブにコピーが作られます。追加費用はかかりません。
ただし、テンプレートはそのまま使うと必ずどこかで破綻します。開いた直後に直すべき項目は5つです。
| 直す項目 | よくある症状 | 対処 |
|---|---|---|
| 日付の起点 | サンプルの日付が残り帯がずれる | 先頭セルの開始日だけ書き換える |
| 土日・祝日 | 工期が実態より短く出る | NETWORKDAYS と祝日シートに差し替える |
| 担当者欄 | 自由入力で表記ゆれが起きる | データの入力規則でプルダウン化 |
| 進捗率の形式 | 0.5 と 50% が混在する | 表示形式をパーセントに統一 |
| 共有権限 | リンクを知る全員が編集可のまま | 特定ユーザーのみ編集に変更 |
はじめてテンプレートを使う人がやりがちな3つの失敗
新しくプロジェクト管理を任された人がつまずくのは、上の5項目のうち特に次の3つです。
- 日付が文字列として入ってしまう:サンプルの「2024/01/01」を消して「1/1」とだけ打つと、セルによっては日付ではなく文字列として入ります。文字列になると条件付き書式の大小比較が成立せず、色帯が1本も出ません。表示形式を「日付」に戻してから入力し直すのが正解です。
- 土日・祝日を除外しないまま日数を数える:10営業日のはずのタスクが暦日10日で計算され、常に2日ぶん楽観的なスケジュールになります。この誤差はタスクが積み上がるほど効いてきて、3か月のプロジェクトなら最終的に1週間以上ずれます。
- 共有権限を広げたまま配る:急いでいると「リンクを知る全員が編集可」のまま関係者に送ってしまいがちです。協力会社に他案件の予算列まで見えていた、というのはこの設定が原因で起きます。編集者は社内メンバーに限定し、外部には閲覧権限か別シートを渡してください。
工期そのものの見積もり精度を上げたいなら、工数管理の考え方とセットで扱ってください。
また、テンプレートを配る前に列の意味を決め切っておくことも大事です。何をもって「完了」とするかが曖昧なままだと、進捗率が担当者ごとの体感になります。着手前に要件定義で完了条件を文章化しておくと、進捗率が数字として意味を持ちます。

4. 関数で進捗率と日付を自動化 | コピペで使える式集
ここまでの数式を、用途別に整理しておきます。どれもスプレッドシートの標準関数だけで動きます。
| 関数 | 用途 | 例 |
|---|---|---|
| SEQUENCE | 日付ヘッダーを一括生成 | =SEQUENCE(1,90,$D$3,1) |
| NETWORKDAYS | 土日祝を除いた工期 | =NETWORKDAYS(D3,E3,祝日!A:A) |
| DATEDIF | 暦日ベースの日数 | =DATEDIF(D2,E2,"D")+1 |
| TODAY | 今日基準の判定 | =AND($E3<TODAY(),$G3<1) |
| SPARKLINE | セル内に進捗バー | =SPARKLINE(G2,{"charttype","bar";"max",1}) |
| SUMPRODUCT | 工期で重みづけした進捗集計 | =SUMPRODUCT(F3:F5,G3:G5)/SUM(F3:F5) |
予定進捗率と実績進捗率を並べる
進捗管理で効くのは、実績の進捗率だけでなく「今日時点で本来あるべき進捗率」を横に並べることです。H列に次の式を入れます。
=MIN(1,MAX(0,(TODAY()-D2+1)/(E2-D2+1)))
これが予定進捗率です。実績(G列)から予定(H列)を引いた差がマイナスなら遅れ、プラスなら前倒しです。差のセルにカラースケールをかけておけば、遅れているタスクだけが赤く浮かび上がります。数字を1つ足すだけで、「なんとなく遅れている気がする」が「3タスクが平均12ポイント遅れている」に変わります。
進捗を全体に集約する
プロジェクト全体の進捗率は、単純平均ではなく工期で重みづけするのが正確です。3日のタスクと30日のタスクを同じ重さで平均すると、実態から大きくずれます。前述の SUMPRODUCT の式がそれにあたります。節目ごとの達成度で管理したい場合は、マイルストーンの行を別に立て、そこだけを抜き出した集計シートを作ると経営層への報告が楽になります。
さらに自動化するなら Apps Script
「完了した行を自動で非表示にする」「祝日リストを外部カレンダーから毎月自動取得する」「日付を変えたら親タスクの期間を再計算する」といった処理は、条件付き書式だけでは実現できず Apps Script(JavaScript によるマクロ)が必要になります。
問題は、書ける人が異動したり退職したりすると、誰もメンテナンスできないブラックボックスが残ることです。社内にエンジニアリングの余力がないなら、この段階で専用ツールに移るほうが総コストは低くなります。monday.com のような専用ツールでは、こうした自動化がコードを書かずに「もし期限が過ぎたら、担当者に通知する」という文章を選ぶだけで設定できます。

5. 親タスクと子タスクの階層管理 | 進捗を自動で積み上げる
実務のガントチャートは、フラットなタスク一覧では足りません。「サイトリニューアル」という大タスクの下に「要件整理」「デザイン」「実装」があり、さらにその下に個別作業がぶら下がる、という2〜3階層の構造になります。この分解の作法そのものはWBSの基礎にまとまっているので、階層設計に迷ったら先にそちらを確認してください。
スプレッドシートで階層を表現するコツは3つです。
- インデントで見せる:子タスクのタスク名セルに「テキストの折り返し」ではなく「インデントを増やす」を適用する。行の階層が視覚的にわかります。
- 親の日付を子から自動計算する:親タスクの開始日に
=MIN(D4:D8)、終了日に=MAX(E4:E8)を入れる。子の日程を動かせば親の帯も自動で伸びます。 - 親の進捗を加重平均で出す:親タスクの進捗率に
=SUMPRODUCT(F4:F8,G4:G8)/SUM(F4:F8)を入れる。子の工期に応じた重みで積み上がります。
ここまで組めば、更新するのは子タスクの行だけで済みます。親タスクは常に自動で追従するので、報告用に別の表を作る必要もありません。
ただし、行を挿入・削除するたびに参照範囲がずれるリスクは残ります。メンバーが誤って行を消すと、親タスクの数式が #REF! になり、誰も気づかないまま数週間が過ぎることもあります。これがスプレッドシート運用の最大の弱点です。

6. スプレッドシートの限界 | 移行を考える4つのサイン
無料で柔軟という長所の裏側には、はっきりした限界があります。次の4つのうち2つ以上に当てはまったら、移行を検討する時期です。
サイン1:同時編集で数式が壊れる 5人以上が同時に触ると、誰かのコピー&ペーストが条件付き書式の範囲を上書きします。変更履歴は残りますが、「誰が・いつ・どのタスクのステータスを変えたか」をタスク単位で追うのは現実的ではありません。復旧のたびに半日が消えます。
サイン2:依存関係が設定できない 「デザイン確定後でないと実装は始められない」という関係を、スプレッドシートは理解しません。デザインが3日遅れたとき、後続タスクの日付を人間が手で全部ずらす必要があります。20人規模の制作会社が並行案件を回すと、この手作業がそのまま納期遅延の原因になります。
サイン3:権限管理が粗い 共有はファイル単位か範囲保護しかありません。「協力会社には自社担当分の行だけ見せたい」という要求に、シートを分けて数式で連携するという回りくどい方法でしか答えられません。リンク共有の設定ミスで外部に見えていた、という事故も起きやすい構造です。関係者ごとの見せ方を整理したいなら、関係者の整理の枠組みを先に作っておくと設計しやすくなります。
サイン4:横断の全体像が作れない 案件ごとにファイルが分かれると、「今週、誰が何本抱えているか」が誰にもわかりません。IMPORTRANGE で集約する方法もありますが、参照が増えるほど読み込みが重くなり、最終的には集計用ファイルの管理が新しい仕事になります。

7. ガントチャートツール比較 | チームに合うのはどれ?
限界を感じたときの移行先を、スプレッドシートと同じ軸で比べます。
| ツール | 依存関係 | 自動化 | 権限管理 | 料金の目安 | はじめる |
|---|---|---|---|---|---|
| monday.com | ドラッグで接続 | ノーコードのルール | ボード・項目単位 | フリー US$0/ベーシック US$9/スタンダード US$12(ガントはスタンダード以上) | 無料トライアル → |
| Notion | リレーションで表現 | 軽量な自動化 | ページ単位 | フリー US$0/プラス US$10 | 無料プランで始める → |
| ClickUp | ネイティブ対応 | Business プラン以上で高頻度に対応 | スペース単位 | Free Forever US$0/Unlimited US$7 | 無料プランで始める → |
| Google スプレッドシート | 数式で疑似的に | Apps Script が必要 | ファイル・範囲単位 | 無料 | — |
| Asana | 対応 | ルール機能あり | プロジェクト単位 | 公式サイトで確認 | — |
※monday.com・Notion・ClickUp の料金は年払い時の1ユーザーあたり月額です。自動化の実行回数の上限を含め、最新の条件は各公式サイトでご確認ください。
monday.com:スプレッドシートの発想のまま移行できる
スプレッドシートから乗り換えるチームにとって、monday.com のいちばんの利点は「表の見た目のまま始められる」ことです。行がタスク、列が担当者・期限・ステータスという構造は同じなので、既存のシートをそのまま貼り付けて取り込めます。
そのうえで、スプレッドシートにない要素が3つ加わります。
1つ目は依存関係です。ガントビューでタスクの端をドラッグして次のタスクにつなぐと、前工程が遅れたときに後続の日程が自動でスライドします。手作業で日付を打ち直す必要がなくなり、スケジュール調整そのものが数分で終わります。
2つ目は自動化ルールです。「ステータスが『レビュー待ち』になったら、レビュー担当者に通知する」「期限の2日前になったら担当者にリマインドする」といったルールを、プログラミングなしで設定できます。遅延に気づくのが週次会議のタイミングではなくなる、というのが実務上いちばん大きい変化です。
3つ目はビューの切り替えです。同じデータを、ガントチャート・カンバン・カレンダー・ワークロードとして切り替えて見られます。経営層にはガント、現場にはカンバン、というように、表を作り分ける必要がありません。時間軸での見せ方を詰めたい場合はタイムラインの設計と合わせて考えると、報告の粒度が揃います。
なお、ガント/タイムラインのビューは上位プランの機能ですが、無料トライアルで課金前に一通り試せます。日本語の管理画面とヘルプがあるため、海外製ツール特有の「英語しかない」問題も起きません。
Notion:ドキュメントとタスクを1か所にまとめたいなら
議事録・仕様書・タスクを別々のツールに散らしたくないチームには Notion が向きます。データベースにタイムラインビューがあり、全プランで利用できるため、無料の範囲でもガントチャートに近い表示は作れます。ただし、フリープランは外部ゲスト10名まで、ファイルアップロードは最大5MB、ページ履歴は7日までという制限があるので、外部パートナーを多く巻き込むプロジェクトでは早めにプラス(US$10)以上が必要になります。
ClickUp:開発チームのスプリント運用に
依存関係やカスタムフィールドを細かく作り込みたい開発チームなら ClickUp です。Free Forever でもタスク数は無制限で、依存関係の設定にも対応しています。自動化を本格的に回すなら Business(US$12)以上が実用ラインになります。
タイプ別の選び方
- 2人以下、コストゼロで始めたい → まずは Notion のフリープラン
- 5〜15人で部門をまたいで動く → monday.com(当サイトのイチオシ)
- 開発チームでスプリントを回す → ClickUp
- 15人以上、複数プロジェクトを横断管理 → monday.com の上位プラン
判断に迷ったら、まず現在のスプレッドシートを1つだけ移して1スプリント運用してみるのが確実です(monday.com の無料プランなら費用をかけずに操作感を確かめられます)。
まとめ
スプレッドシートのガントチャートは、正しく数式を組めば「無料なのに自動更新される」実用的な管理表になります。最後に要点を整理します。
- 作り方は3つ。急ぐならテンプレート、作り込むなら条件付き書式で自作する
- 色帯の心臓部は
=AND(I$1>=$D3,I$1<=$E3)という複合参照のカスタム数式 - 工期は NETWORKDAYS で営業日ベースにし、祝日シートを必ず用意する
- 予定進捗率を実績の横に並べると、遅延が数字で見える
- 同時編集の衝突・依存関係・権限管理の3つで詰まったら、ツール移行のタイミング
まずは今の案件で、開始日・終了日・進捗率の3列と条件付き書式だけを用意してみてください。ここまでで、手塗りの時間はほぼゼロになります。
そのうえで、メンバーが増えて数式の破損や日程の手直しに時間を取られ始めたら、monday.com のテンプレートから新しいボードを作り、既存のシートを貼り付けてみてください。タスク・担当者・期限を流し込むだけで、10分でガントビューが立ち上がります。目標そのものの立て方から整えたい場合はゴール設定も合わせて見直すと、チャートが「作って終わり」になりません。
よくある質問
スプレッドシートでガントチャートを作るのは本当に無料ですか
Google アカウントがあれば、テンプレートの利用も条件付き書式による自作も完全に無料です。追加のアドオンも必須ではありません。ただし「挿入 → タイムライン」のタイムラインビューだけは Google Workspace のビジネス系プラン以上の機能で、無料アカウントでは表示されません。
進捗率はどう計算すればいいですか
個別タスクは担当者が0〜1で入力し、全体は工期で重みづけした =SUMPRODUCT(工期範囲,進捗率範囲)/SUM(工期範囲) で集計します。単純平均にすると、短いタスクが多いプロジェクトで実態より進んで見えるので注意してください。あわせて =MIN(1,MAX(0,(TODAY()-開始日+1)/(終了日-開始日+1))) で予定進捗率を出し、実績との差を見るのが実用的です。
日付を変えるだけで色を自動更新するには
セルを手で塗らず、条件付き書式のカスタム数式で色を出すことが条件です。カレンダー領域に =AND(I$1>=$D3,I$1<=$E3) を設定しておけば、開始日と終了日のセルを書き換えた瞬間に色帯が伸縮します。I$1 は行固定、$D3 は列固定という参照の書き方が唯一のポイントです。
土日や祝日を工期から除外できますか
NETWORKDAYS 関数で除外できます。別シートに祝日の日付を縦に並べ、=NETWORKDAYS(開始日,終了日,祝日!A:A) と参照してください。表示側も =WEEKDAY(I$1,2)>5 と =COUNTIF(祝日!A:A,I$1)>0 の2つのルールで背景をグレーにしておくと、稼働日と非稼働日が視覚的に区別できます。
スプレッドシートと専用ツールはどう使い分けますか
タスク30件以下・8人以下・3か月以内ならスプレッドシートで十分です。それを超えるか、タスク同士の依存関係を管理したい、あるいは誰がいつ何を更新したかを追跡したい場合は専用ツールに切り替えてください。まず1プロジェクトだけ移して並行運用し、更新の手間が減ることを確かめてから全体展開するのが安全な進め方です。
