【Excel】シフト管理表の作り方を紹介。月日や曜日を自動化し、勤務区分をプルダウンで設定

エクセルでシフト表を作成する方法と手順を紹介

様々な職場や活動の場で用いられるシフト表は、日々のスケジュールを管理する上でとても重要です。

シフト表を作成すると、人員不足や年休、代休の管理、曜日ごとの傾向や人員の採用予定など、今後の計画が立てやすくなります。

この記事では、Excel(エクセル)を使ったシフト管理表の作り方をエクセル初心者向けに紹介します。

シフト管理表の完成イメージ

まずは、今回の記事で紹介するエクセルのシフト管理表の完成イメージからお見せします。

今回は、以下のシフト表の作り方の手順を紹介します。

エクセルのシフト管理表の完成イメージ
エクセルのシフト管理表の完成イメージ

シフト表の特徴

・勤務区分(A~Dなど)をプルダウンから選択できる

・「年月」を入力すると、日付と曜日が自動で変更される

・日々の勤務区分(A~Dなど)を自動で集計

勤務時間ごとに【A】【B】【C】などに区分けして、プルダウンリスト(ドロップダウン)から選択できるようにします。

シフト表にプルダウンを設定
シフト表にプルダウンを設定

また、下のC4セルとE4セルに「年月」を入力すると、日付と曜日が自動で変更されるようにIF関数を利用します。

シフト表は年月を入力すると、日付と曜日が自動で更新
シフト表は年月を入力すると、日付と曜日が自動で更新

また、勤務区分ごとに何人を配置したか分かるように、シフト表の下には、勤務区分ごとの人数を自動で集計します。

シフト表の勤務区分を集計

シフト管理表の作り方と手順を紹介

それでは、シフト管理表の作り方を手順に沿って紹介していきます。

また、シフト表を作成する前に、1点気を付けていただきたい点あります。

それは、手順2で利用するIF関数は曜日を自動で変更させる仕様上、非常に関数が長くなります

そのため、できるだけ、手順1と手順2に関しては、記事で紹介するセルの位置どおりに作成してください。

そうすることで、手順2は、記事のIF関数の数式をコピペするだけで完了します。

手順1.『年月』を入力

まずは、シフト表の対象の年月を入力します。

C4セルに「年」を、E4セルに「月」を入力してください。記事と同じセルの位置に作成することで手順2の作成が簡単になります。

手順1.年と月をセルに入力
手順1.年と月をセルに入力

手順2.『月日』にIF関数を挿入

手順2で、手順1で入力した年月に合わせて、自動で月日を表示させるように設定します。

次に、C7セルに、以下のIF関数をコピペして貼り付けてください。

=IF(DAY(DATE($C$4,$E$4,COLUMN()-2))=COLUMN()-2,DATE($C$4,$E$4,COLUMN()-2),"")

手順2-1.年月を自動表示させるためのIF関数を挿入
手順2-1.年月を自動表示させるためのIF関数を挿入

C7セルのIF関数の結果は、日付を表すシリアル値「45323」などの5桁の数値で表示されることを確認してください。

手順2-2.IF関数の結果がシリアル値で表示される
手順2-2.IF関数の結果がシリアル値で表示

この関数の仕組みを詳しく知りたい方や、C7セル以外にIF関数を挿入したい方は、以下の記事を紹介してください。

次に、C7セルを右クリックし、右クリックメニューの「セルの書式設定」を選択してください。

「表示形式」タブの「日付」メニューから「〇月〇〇日」の種類を選択し、「OK」を押して画面を閉じて下さい。

手順2-2.日付の表示方法を変更

そうすると、日付を表すシリアル値「45323」は、「2月1日」という表示に修正されました。

次にC7セルのIF関数をコピーし、31日目にあたるAG7セルまで貼り付けてください。(オートフィルの利用でも可能)

そうすると、2024年2月は29日が月末日なので、30日、31日は表示されません。

手順2-3.IF関数を31日分コピペして日付セルを完成させる
手順2-3.IF関数を31日分コピペして日付セルを完成させる

オートフィルを使った関数のコピペの方法を使いは、以下の記事を参考にしてください。

手順3.『曜日』にTEXT関数を挿入

手順3では、日付に該当する『曜日』を入力します。

日付セルの下のC8セルに、以下のTEXT関数を挿入してください。

=TEXT(C7,"aaa")

手順3-1.TEXT関数を挿入して曜日を入力
手順3-1.TEXT関数を挿入して曜日を入力

次にC8セルのTEXT関数をコピーし、31日目にあたるAG8セルまで貼り付けてください。(オートフィルの利用でも可能)

手順3-2.TEXT関数を31日分コピペする
手順3-2.TEXT関数を31日分コピペする

手順4.『氏名』を入力

続いて、シフト管理したいメンバーの氏名を入力します。

手順4.シフト管理表の氏名を入力
手順4.シフト管理表の氏名を入力

手順5.シフトの勤務区分表を作成

続いて、シフト表の空いているスペースに、勤務区分表を作成します。

この勤務区分表のセルは、以降のステップで関数や数式で利用しないので、どの位置に作成しても問題ありません

例えば、「A」であれば「6:00~9:00」、「有」であれば「有休」といったように、職場や活動の勤務パターンに合わせて、勤務区分のコードを決定してください。

手順5.シフトの勤務区分表を作成
手順5.シフトの勤務区分表を作成

セルの枠に罫線を引く場合は、セルを選択してから、「ホーム」タブの「罫線」コマンドから好みの罫線を選択してください。

セルに罫線を引く方法
セルに罫線を引く方法

複数のセルを1つのセルに結合したい場合は、結合したいセルを選択してから、「ホーム」タブの「セルの結合」コマンドから「セルの結合」を選択してください。

セルを結合する方法
セルを結合する方法

手順6.シフト表全体に罫線を引く

次に、シフト表全体に罫線を引きます。

罫線の太さや種類は好みの線を利用してください。また、必要に応じて行見出し、列見出しのセルの色を変更してください。

手順6.シフト表全体に罫線と色を設定
手順6.シフト表全体に罫線と色を設定

セルの罫線は、セルを選択してから、「ホーム」タブの「罫線」コマンドから罫線のスタイルを選択してください。

罫線の引き方や削除の方法を詳しく知りたい方は、以下の見出しを参考にしてください。

手順7.プルダウンを設定する

続いて、「A」「B」「有」「代」などの勤務コードをプルダウンリストから選択できるように設定します。

まずは、プルダウンに利用したい勤務区分コードを、シフト表の空いているセルに入力します。

手順7-1.勤務区分コードを入力
手順7-1.勤務区分コードを入力

次に、プルダウンを設定したいシフト表の一番左上のセルを選択してから、「データ」タブの「データの入力規則」をクリックします。

手順7-2.データの入力規則を選択
手順7-2.データの入力規則を選択

「データの入力規則」画面が表示されます。

入力値の種類は「リスト」を選択し、元の値は空いているセルに入力したコードのセル範囲を選択します。

手順7-3.データの入力規則からプルダウンを設定
手順7-3.データの入力規則からプルダウンを設定

そうすると、セルに▽ボタンが表示され、プルダウンリストから勤務区分を設定できるようになります。

手順7-4.プルダウンの設定が完了
手順7-4.プルダウンの設定が完了

他のセルにもプルダウンの設定をコピペする必要があります。

プルダウンを設定したセルを右クリックメニューからコピーします。

手順7-5.プルダウンのセルをコピー
手順7-5.プルダウンのセルをコピー

次に、プルダウンを設定したいセル範囲を選択してから、右クリックメニューの「形式を選択して貼り付け」を選択します。

手順7-6.右クリックメニューの「形式を選択して貼り付け」を選択
手順7-6.右クリックメニューの「形式を選択して貼り付け」を選択

「形式を選択して貼り付け」画面で「入力規則」にチェックを入れてから、「OK」を押して画面を閉じます。

手順7-7.データの貼り付け方法を選択
手順7-7.データの貼り付け方法を選択

そうすると、選択したすべてのセルにプルダウンの設定がすべて完了します。

手順7-8.全セルのプルダウンの設定が完了
手順7-8.全セルのプルダウンの設定が完了

プルダウンの設定方法を詳しく知りたい方は、以下の記事を参考にしてみてください。

手順8.日々の勤務区分を集計する

日々、どの勤務区分に何人が従事しているか分かりやすくするため、シフト表の下側に集計表を作成します。

下の図のように、「A」「B」「C」「D」など集計したい勤務区分の行を追加してください。

手順8-1.勤務区分別の集計表を作成
手順8-1.勤務区分別の集計表を作成

勤務区分を集計するために、以下のCOUNTIF関数を挿入します。

=COUNTIF(C$9:C$14,$B15)

参照するセルは表のサイズに合わせて、参考セルは調整してください。

また、他のセルにもコピーできるよう、$マーク(絶対参照)をつける位置は、下の緑下線の位置に付けて下さい。

手順8-2.勤務区分を集計するためにCOUNTIF関数を挿入
手順8-2.勤務区分を集計するためにCOUNTIF関数を挿入

👇COUNTIF関数の使い方は以下を参照

COUNTIF関数を挿入したセルをコピーし、他のセルにも数式を貼り付けします。

数式の貼り付けは、右クリックメニューの「貼り付けオプション」から「数式」を選択すると数式の貼り付けが可能です。

手順8-3.COUNTIF関数の数式をコピペ
手順8-3.COUNTIF関数の数式をコピペ

手順9.シフト管理表の完成

以上で、シフト管理表の完成です。

C4セル、E4セルの年月を変更すると、日付や曜日が自動で変更されることを確認できれば、シフト管理表の完成です。

手順9.エクセルのシフト表の完成を確認
手順9.エクセルのシフト表の完成を確認