スケジュール管理の一つガントチャートはフリーソフトを使わず、Excelで簡単に作れる!

広告

ガントチャートというのはスケジュール管理の一つです。
下図のようにタスク・ステータスを縦軸、日付を横軸の棒グラフで表すスケジュール管理ツールです。

ガントチャートの結果画像

この表のいい所は大きく2つです。

タスクの進捗状況などの視覚化多人数共有と編集

スケジュールのタスクがいくつあって、いつまでやるのか。
何が終わっていなくて、誰が担当しているのかがこの表一つでわかります。

もちろん、個人のスケジュールとしても使えますが、スケジュールの共有にも使えますよ。
この表はExcelの関数と条件付き書式を使用して作っています。是非作ってみてください。

この記事は以下の人に向きの記事です

  • 複数の人と管理ができるスケジュール表を作りたい
  • スケジュールの編集を複数人で行えるようにしたい
  • ExcelのSUM関数よりももう一つ先の関数を使いたい

ガントチャートの設定手順は以下の通りです。

ガントチャートの設定手順
  • 手順 ①
    カレンダーの日付設定
  • 手順 ②
    カレンダーに曜日を表示させる設定
  • 手順 ③
    休日(土・日・祝)列の背景色設定
  • 手順 ④
    開始日と終了日を判定し、棒グラフの設定
  • 手順 ⑤
    担当者毎に棒グラフの色を変える設定
  • 手順 ⑥
    ステータスが完了した時に行全体がグレーになる設定
  • 手順 ⑦
    Googleスプレッドシートにし、多人数編集を可能にする設定

※↓の目次の該当箇所をクリックするとリンクが飛ぶようになっています。(PCの方は→のサイドババーにも目次があるのでご活用下さい。)

手順①:カレンダーの日付設定

まずは下図のように縦軸にタスク、横軸に日付となる表を作ります。

ガントチャートの表を作成イメージ図

日付のスタートのセルに=Date(年,月,日)を入力します。
「スタートの日」というのがポイントです。
今回は2023年7月1日スタートということで、=Date(2023,07,01)を入力しました。

Date関数を使って、スタートの日付を入力する

Date関数を使って、日付を入力しますと以下のようになります。

日付エラー画像

これは、2023/07/01がセルに収まりきっていないため、表示エラーになっています。
このあとに表示形式を操作して日付のみの表示にします

Date関数を使う事で、表示形式が日付であることをセルに認識させます。
(例:7月31日の次は8月1日になるように、31日の次が1になるようにするようにします)

日付(シリアル値)になることで日付の計算(足し算、引き算など)ができるようになります。

続いては日付の表示形式を日にちのみに設定します。
スタートのセルと隣のセルを選択した状態で、右クリックをしその状態で「セルの書式設定」を選択します。(この図上ですと、C3・D3セルを選択した状態です。)

手順3 表示形式で日付のみの表示にする画像

セル書式設定では、「ユーザー定義」を選択 → 種類に「d」を入力 → 「OK」ボタンをクリックし、設定画面を閉じます。

ユーザー定義の設定

dはDayの頭文字です。なので「日付だけ表示する」という設定になります。

日付の表示設定をしましたら、他の日にちを表示します。
他の日にちを表示する場合は、日付スタートのセル(この場合はC3)に+1していきます。

手順4 スタートのセルに1日を足して、他の日にちを表示する画像

あとは、オートフィルで終了日まで日付を表示し確定します。

オートフィルで日付を表示する画像

手順② :カレンダーに曜日を表示させる設定

下図のように日付の下に曜日を表示するようにします。
今回はWeekday関数・Choose関数を使った曜日を表示する方法です。

Weekday関数を使った曜日を表示する方法

月火水木金土日と手入力もできますが、手順①でDate関数で日付を抽出しているのでWeekday関数を使うことで日付を元に曜日を自動で取得が可能になります。

Weekday関数は曜日が直接表示されるわけれはなく、0~7の整数が返されます。
そこでCHOOSE関数で「1」だったら月曜日と言ったように、曜日に変換してあげます。

ちなみに下図のようなイメージです。

CHOOSE関数で曜日を使ったイメージ図

それでは、実際にガントチャートに曜日を表示していきましょう。
まずは、曜日の行を追加します。
3行目を選択した状態で右クリック → 挿入の順にクリックします。

行挿入画像

行を追加しましたら、「1(日)」の下のセルに曜日を表示する式を入力します。
入力する式は以下の通りです。

=CHOOSE(WEEKDAY(B2),”日”,”月”,”火”,”水”,”木”,”金”,”土”)
実際に入力した画像イメージがこちらです。

Weekday関数を入力した画像

これで決定(Enterキー)をしますと曜日が表示されます。

Weekday関数を出力した画像

2日目以降も同じ式を適用させますので、オートフィルします。

曜日のオートフィル画像

補足:カレンダーのように土を青、日を赤文字にする設定

カレンダーのように土曜日の「土」を青、「日」を赤の文字色に変更する方法です。
下図はイメージです。

完成図


特定の条件の時に文字色や背景色などを変更させる機能が、Excelには備わっています。それが条件付き書式という機能です。

この条件付き書式を覚えると、Excelがぐっと面白くなりますよ。

手順は4つです。

  1. 条件付き書式を適用させたいセルの選択
  2. 条件付き書式で、セルが「土」だった時の条件式を設定
  3. 「土」だった時の色を設定
  4. 同様に「日」の時の設定

まずは、条件付き書式を適用させたいセルの選択をします。

条件付き書式を適用させたいセル選択画像

選択した状態で、条件付き書式の画面を開きます。
「条件付き書式」アイコン → 新しいルールの順にクリックします。

条件付き書式の設定手順画像

新しい書式ルールの画面が開きましたら、「数式を使用して、書式設定するセルを決定」を選択します。※このガントチャートでは必ず「数式を使用して、書式設定するセルを決定」を選択します。

新しい書式ルールの画面

次の数式を満たす場合に値を書式設定の欄には「土」だったらの式を入力します。
以下のように入力します。(セルはB3セルを選択してあげます。)

条件付き書式用ルール式

=$B$3=”土”

これはB3セルが「土」だった時に、条件付き書式を発動させるという式になります。
しかし、$B$3のままだと、B3セルしか参照しない(見ない)状態になります。
このまま、条件付き書式を適用すると以下のようになります。(例で、青文字にしました。)

式を間違えた時の画像

曜日全てに青文字になっています。条件付き書式は範囲選択したセルを一つずつ読み込みます。
=$B$3=”土”ですと、例えばC3セルは「日」ですが、設定したルールは=$B$3=”土”なので、青文字にする条件が発動します。参照するセルと特定の場所で固定することを絶対参照と言います。

本当にやりたいことは、各セル毎の曜日が「土」かどうかを判定し、「土」だったら青色の文字にすることになりますので、ルールをそのように変更してあげます。

見るべきポイントは曜日が行・列のどちらにあるのかを見ます。

固定するポイントを参考にする際の画像

行は3行目で固定、列は変動していることがわかります。(1日目:B3、2日目:C3、3日目:D3…)なので、先ほどの式を=$B$3=”土” → =B$3=”土”に修正します。
すると、「土」のついたところだけ、青い文字色になります。

土曜日の文字の装飾がうまくいったときの画像

アルファベット前や数字前つくマーク「$」は参照するセルの行もしくは列を固定する時に使います。
この固定マーク$は条件付き書式、関数と幅広く使いますので、覚えておきましょう。

順番が前後してしまいましたが、文字色を設定する場所は書式ボタンから設定ができます。
セルの背景色設定も書式ボタンからですので、装飾する際は書式ボタンと覚えておくと良いです。

文字の装飾する時の手順①画像

フォントタブ → 色 → OKボタンの順で書式を設定していきます。

文字の装飾する時の手順②画像

それでは、日曜日は赤文字で同じように設定してみましょう。
下図のように日曜日は赤文字になるはずです。

完成図

手順③ :休日(土・日・祝)列の背景色設定

続いては休みの日は背景色をグレーにする設定です。
下図が設定後のガントチャートです。(7月17日は海の日の祝日)

ポイントは休みの日には大きく2種類の休みのパターンがあるということです。

  • 1つは土・日のように曜日が固定の休み
  • 2つ目は祝日や会社の休みのように、曜日が変動する休み

1つめの固定の休みの設定に関しては難しくありません。
2つめの祝日のように変動する休みの設定をまず行っていきます。

変動する休みに関しましては、以下の図のように別シートに祝日用テーブルを作ります。

祝日用テーブル

この表にある日全てを休みにする事で、ガントチャートに対し祝日設定をすることができます。
※祝日テーブルは2023年と2024年分であれば作成してあります。
この章の最後の補足をご覧ください。(目次よりクリックするとページ移動します。)

祝日テーブルの作成ができましたら、条件付き書式を適用させます。
土・日・祝日だった時に、ガントチャートセルの背景色をグレーにしますので、以下の画像のようにセルの範囲($B$4:$U$13)選択します。

手順3. 条件付き書式を設定画像

セル範囲を選択した状態で、条件付き書式ウィンドウを起動します。
「条件付き書式」 → 新しいルール → 「数式を使用して、書式設定するセルを決定」の順にクリックします。

手順3. 条件付き書式を起動

入力する式は以下です。
=OR(B$3=”土”,B$3=”日”,COUNTIF(Sheet1!$B$4:$B$20,B$2)=1)

Countif(Sheet1!…
Sheet1の部分は祝日テーブルのシートになります。

式を入力

入力しましたら、「書式」ボタンをクリックします。

「塗りつぶし」タブ → 背景色を選択 → OKボタンの順にクリックします。

手順③:背景色の設定

「OK」ボタンをクリックし、終了です。

これで、土・日・祝日(7月17日:海の日)のセルが背景色グレーになりました。

Countifは指定したワードが指定した範囲内にいくつあるかカウントする関数ですが、IF関数と同様に条件式としても使用することができますので、今回の使い方を覚えておくと良いです。

補足:2023年・2024年の日本の祝日テーブルを作りましたのでご利用ください。

下記リンクより祝日テーブルを作成しました。(2023年と2024年分)

祝日用テーブル(Excelファイル)
Googleドライブに格納しておりますので、よろしければお使いください。
祝日は内閣府にある「国民の祝日」についてのページを参考に作成しています。

手順④ :開始日と終了日を判定し、棒グラフの設定

続きましてはガントチャートの肝である、棒グラフの設定方法です。
開始日と終了日を判定し、条件付き書式で背景色の設定をして、スケジュールを視覚化します。

完成イメージ

棒グラフを設定するためには、出発点「開始日」、到達点「終了日」が必要になりますので、列を追加します。

手順1.開始日と終了日の列を追加の画像

開始日と終了日の表示形式は日付形式であること
カレンダーの日付との計算を行うため、日付形式でないと正しく計算が行われません。

棒グラフを表示させたいセルを全て選択します。
今回は7月1日~20日まででかつ、工程10の13行目なので、セルD4:W13となります。

条件付き書式を適用させるセルを選択する画像

「条件付き書式」アイコン → 新しいルール → 数式を使用して、書式設定するセルを決定の順にクリックします。

手順3. 条件付き書式の設定画面

次の数式を満たす場合に値を書式設定の欄に以下の数式を入力します。

=AND($B4<=D$2,$C4>=D$2)

手順4. 開始日以上かつ終了日以下となる関数式を入力画像

式を入力しましたら、書式ボタンより背景色を設定して書式を確定します。
(今回は緑色の背景色で設定しています。)

前回「Countif関数を使って休日(土・日・祝)列の背景色設定編」で設定した祝日の条件付き書式がに、今回の設定と重なってしまうようになります。

条件付き書式が重なってしまう現象の画像

条件付き書式には、設定している条件付き書式が2つ以上あった場合、優先順位があります。
今回は祝日設定を優先させてあげますので、ルールの削除ボタン横にある「▼」をクリックします。

条件付き書式の優先順位の変更

優先順位を変更した後は、右下にある「適用」ボタンと「OK」ボタンをクリックします。

これで、開始日から終了日の間に休日が重なっていたとしても、祝日の色は変わらないようにすることができました。

手順⑤ :担当者毎に棒グラフの色を変える設定

続きましてはガントチャートを担当者別に、色分けする方法です。
下図がイメージです。

担当者別に色分けする方法の実装

担当者だけですとわかりづらいところも、色分けすることで把握しやすくなる点がポイントです。

また、一見難しそうに見えますが、設定もとても簡単なのでひと手間加えるだけでわかりやすいガントチャートが作れるのもポイントです。

それでは、終了予定日と日にちの間に列を追加し、そこに「担当者」の項目を追加します。

担当者列の追加

担当者名も入力しておきます。

担当者名を追加

ここからは条件付き書式を設定していきます。
ガントチャートのエリア(棒グラフ部分)内範囲選択します。

条件付き書式を設定する範囲の選択画像

範囲選択した状態で「条件付き書式」⇒「ルールの管理」の順にクリックします。
現時点で2つの条件付き書式が設定されているかと思いますが、緑の条件付き書式に条件を追加します。

この緑の条件付き書式には開始日と終了日を判定して、棒グラフの色を付ける式が登録されています。
この場所に、担当者分の条件も追加します。

条件付き書式のルールの管理画面確認図


まず、その棒グラフに色付けする条件付き書式を設定し、「ルールの編集」をクリックします。

条件付き書式の設定変更図

現在、条件付き書式の設定をしている式では以下の式が入っています。

=AND($B4<=E$2,$C4>=E$2)

この式に、担当者(加藤)を追加します。

=AND($B4<=E$2,$C4>=E$2,$D4=”加藤”)
担当者の列は列はD列で行ごとに担当者が入っていますので、D列は固定で、行の固定を外す($D4とする)ことがポイントです。

追加しましたら、条件付き書式ルールの管理画面の右下にある「OK」ボタンをクリックします。

同じ要領で、他の人(斎藤さん)の条件付き書式も作っていきます。

=AND($B4<=E$2,$C4>=E$2,$D4=”斎藤”)

式は、最後の名前が違うだけです。

条件付き書式のルール管理画面にて、「新規ルール」ボタンをクリックします。

条件式はを入力し、書式ボタンから、背景色も加藤さんとは別の色を選択します。

条件付書式ルールの管理画面に戻りましたら、祝日設定の条件付き書式の優先順位よりも下げます。

手順⑥ :ステータスが完了した時に行全体がグレーになる設定

続きましては、ステータスを判定し、ガントチャートに色を付ける方法です。
(下図では、ステータスが「完了」となった場合に、ガントチャートを消す(グレー)にするということをしています。)

完成画像

視覚的にそのタスクが終わっているのか、そうでないのかが判定しやすくなります。
また、担当者自身も自分が抱えているタスクの数が把握しやすくなります。

列を選択し挿入します。(この場合はD列に追加します。)

ステータス列の追加

今回、ステータスが「完了」となったらその行全体の背景色をグレーにしますので、セル範囲選択はタスクの行全てになります。

範囲選択画像

セルの範囲選択後、条件付き書式 → 新しいルール → 数式を使用して、書式設定するセルを決定を選択します。

新しいルールの設定画面

ルールには以下の式を入力します。
=$B4=”完了”

今回は、ステータスが完了となったら…なので、B列にあるセルが完了になったらという式を入れています。

合わせて、背景色と文字色も設定します。
文字色は、背景色グレーの場合、黒文字は見づらくなりますので、白文字を入れています。

補足:チェックボックスで判定する方法

このステータス判定には、チェックボックスで判定する方法もあります。
ただし、こちらはGoogleスプレッドシートにする時には調整が必要になりますので使用する際注意が必要です。

今回は、ステータス判定の代わりに、チェックボックスを使って判定する方法になります。
下図がチェックボックスを使用した時のイメージです。

完成図

チェックボックスのメリット:

ステータスで判定するパターンとチェックボックスとでは、ガントチャートを作る側と使う側とで、使いやすさが違います。今回のチェックボックスの方が、使う側としては使いやすくなります。(何といってもワンクリックで済む!)

チェックボックスのデメリット:

Excel以外のソフトで使う場合、設定しなおしが必要 Or 使えない

このガントチャートの記事は8記事の構成になっており、8記事目にGoogleスプレッドシートで共有があるのですが、このGoogleスプレッドシートに変換した時に、チェックボックスは再設定が必要になります。将来的にGoogleスプレッドシートを考える場合はおススメしません。

チェックボックスを大量にセットすると処理に時間がかかる

チェックボックスを大量に使用する場合、Excelの処理に時間がかかるようになります。
あまり良い性能のパソコンを使っていない場合、パソコンの処理が追い付かずフリーズしているような状態になってしまう可能性があります。

チェックボックスで判定するようにするためには下図のように列を2つ追加します。
一つは「チェックボックスを設置する列」、もう一つは「チェックボックスを判定する列」となります。

仕組みは右側の列が重要で、チェックがついている=TRUEとなると行がグレーになります。

それではチェックボックスを設置していきます。
チェックボックスの出し方は、開発タブ → 挿入 → チェックボックス の順にクリックします。

チェックボックスの挿入方法

チェックボックスを設置したら、下図のようにセルにサイズを合わせます。

チェックボックスの設置

チェックボックスを設置すると、「チェックボックスxx」という名称がつくので、今回は不要なので削除します。

チェックボックスのセルをコピー&ペーストをして、左右中央揃えにします。

チェックボックスを行数分コピー&ペースト

チェックボックスの中央揃えについてわからない方は、こちらの記事をご覧ください。

チェックボックスが左右中央揃え(左右中央寄せ)にならない時はこれ試してみて
今回の記事のチェックボックスはExcelの開発タブにあるチェックボックスの左右中央揃え(左右中央寄せ)です。 開発タブにあるチェックボックスはやや曲者で、中々左右の中央寄せが難しいもので中々、うまく中央に寄ってくれません。 そんなときには、こちらの方法を試してみてください。 ぜひご覧ください。

チェックボックスのON/OFFを判定するために設定を行います。
設定の仕方は、チェックボックスを右クリック → オブジェクトの書式設定 の順にクリックします。

チェックボックスの設定の画像

リンクするセルをクリック → 対象のセルを入力(もしくはセルをクリック)します最後に「OK」ボタンをクリックします。
対象のセルはチェックボックスの右隣のセルを選択するようにします。(セルは絶対値を指定するようにしましょう。セルを$$で囲む状態)

これを全てのチェックボックスに対し設定を行います。
背景がチェックを付けたのに、うまくいかない場合はこの設定もれのケースが多いです。

リンクするセルの設定

設定ができましたら、チェックボックスをクリックによってC列がTRUEとFALSEに文字が表示され、切り替わるようになります。

※チェックボックスにチェックが付けられない場合、オブジェクト選択のカーソルになっているので、一度ESCキーを押すと解除できます。

チェック判定の確認

あとは条件付き書式を設定するだけです。
前回のステータスの条件付き書式が残っていますので、それを応用しましょう。
まずはセルA4を選択した状態で、条件付き書式 → ルールの管理をクリックします。

条件付き書式のルールを選択した状態で、「ルールの編集」をクリックします。

今回、チェックボックスのチェックの有無で判定しますので、B列になっている箇所をC列に変更します。そして、C列の値がTRUEになっている時=チェックがついている状態になりますので、セルがTRUEの時という設定を入れます。

条件付き書式の設定変更

「OK」ボタンをクリックして色の設定は終了です。

最後にチェックボックス判定用の列(C列)を非表示にして完了です。
操作方法は右クリック → 非表示の順にクリックします。

C列の非表示の仕方

これで、チェックボックスの有無で条件付き書式を判定する設定は完了です。

C列非表示後

手順⑦ :Googleスプレッドシートにし、多人数編集を可能にする設定

いよいよ最後の設定です。
Googleスプレッドシートを使用すると、多人数同時編集ができるようになります。

Googleスプレッドシートの強い所

  • 管理者以外の人がGoogleアカウントを持っていなくても編集ができる
  • GoogleはDriveに保存され、そのファイルの住所はURLで管理されている

URLがわかれば、誰もが編集可能になる。(ただしURLの取り扱いには十分に注意が必要)

ここからは管理者(代表者)側の操作になります。

Google Driveは Google アプリ → Google Driveの順で起動します。
※事前にGoogle アカウントにログインしておくとスムーズです。

手順②:Googleアカウントにログインし、Googleドライブを起動

ファイルをドラッグ&ドロップでアップロードをします。
動画ではファイルを開きましたが、Googleスプレッドシートでも条件付き書式が動作することを見せるために行いました。

手順③:1で作ったガントチャートをGoogleドライブにアップロード

右クリックでなくても、ファイル右上にある「…」からも同じメニューが表示されます。

手順④:ファイルを右クリックしリンクを取得

共有用メニューが表示されたら、「制限付き▼」をクリックします。

制限付きをクリック

次に、「リンクを知っている全員」を選択します。

閲覧者を編集者に変更します。

「リンクをコピー」 → 「完了」ボタンの順に、クリックします。

「リンクをコピー」 → 「完了」ボタンの順に、クリックします。

ここでコピーしたURLを共有することで、共有した人と同時編集が可能になります。

Googleスプレッドシートにする際、注意点が一つあります。

条件付き書式で設定した数式において別シートを参照していた場合、その式が外れます。
下図のようなイメージです。

条件付き書式の土日祝日の設定が外れる

今回の場合、手順③の土・日・祝日の時に背景色をグレーにする箇所で別シートを参照しています。
祝日設定の条件付き書式が外れていますので、設定しなおします。

Excelと画面デザイン等異なりますが、Googleスプレッドシートでもやることは同じです。
条件付き書式を適用させたいセルの範囲選択をします。

条件付き書式を適用させる範囲選択

「表示形式」タブ → 「条件付き書式」の順にクリックします。

条件付き書式の出し方

「条件を追加」をクリックします。

条件付き書式の追加

書式ルールの「セルの書式設定の条件」では「カスタム数式」を選択します。
値または数式欄に以下の数式を入力します。

=OR(F$3=”土”,F$3=”日”,COUNTIF(indirect(“Sheet1!$B$4:$B$20”),F$2)=1)

Googleスプレッドシートで別シートを参照する式を入力する際、Indirect関数を使用する必要があります。

条件付き書式のルールを入力すると、すぐに反映されますので、確認をします。

条件付き書式の再設定

休日の背景色が担当者の棒グラフと重なってしまっている点があるので、条件付き書式の優先順位を変更して完成です。

条件付き書式の優先順位変更

まとめ

いかがでしたでしょうか。
ガントチャートはスケジュール管理に役立つツールです。
また、使いまわしもできますので、ぜひ活用してみてください。

コメント