様々な職場や活動の場で用いられるシフト表は、日々のスケジュールを管理する上でとても重要です。
シフト表を作成すると、人員不足や年休、代休の管理、曜日ごとの傾向や人員の採用予定など、今後の計画が立てやすくなります。
この記事では、Excel(エクセル)を使ったシフト管理表の作り方をエクセル初心者向けに紹介します。
シフト管理表の完成イメージ
まずは、今回の記事で紹介するエクセルのシフト管理表の完成イメージからお見せします。
今回は、以下のシフト表の作り方の手順を紹介します。
シフト表の特徴
・勤務区分(A~Dなど)をプルダウンから選択できる
・「年月」を入力すると、日付と曜日が自動で変更される
・日々の勤務区分(A~Dなど)を自動で集計
勤務時間ごとに【A】【B】【C】などに区分けして、プルダウンリスト(ドロップダウン)から選択できるようにします。
また、下のC4セルとE4セルに「年月」を入力すると、日付と曜日が自動で変更されるようにIF関数を利用します。
また、勤務区分ごとに何人を配置したか分かるように、シフト表の下には、勤務区分ごとの人数を自動で集計します。
シフト管理表の作り方と手順を紹介
それでは、シフト管理表の作り方を手順に沿って紹介していきます。
また、シフト表を作成する前に、1点気を付けていただきたい点あります。
それは、手順2で利用するIF関数は曜日を自動で変更させる仕様上、非常に関数が長くなります。
そのため、できるだけ、手順1と手順2に関しては、記事で紹介するセルの位置どおりに作成してください。
そうすることで、手順2は、記事のIF関数の数式をコピペするだけで完了します。
手順1.『年月』を入力
まずは、シフト表の対象の年月を入力します。
C4セルに「年」を、E4セルに「月」を入力してください。記事と同じセルの位置に作成することで手順2の作成が簡単になります。
手順2.『月日』にIF関数を挿入
手順2で、手順1で入力した年月に合わせて、自動で月日を表示させるように設定します。
次に、C7セルに、以下のIF関数をコピペして貼り付けてください。
=IF(DAY(DATE($C$4,$E$4,COLUMN()-2))=COLUMN()-2,DATE($C$4,$E$4,COLUMN()-2),"")
C7セルのIF関数の結果は、日付を表すシリアル値「45323」などの5桁の数値で表示されることを確認してください。
この関数の仕組みを詳しく知りたい方や、C7セル以外にIF関数を挿入したい方は、以下の記事を紹介してください。
次に、C7セルを右クリックし、右クリックメニューの「セルの書式設定」を選択してください。
「表示形式」タブの「日付」メニューから「〇月〇〇日」の種類を選択し、「OK」を押して画面を閉じて下さい。
そうすると、日付を表すシリアル値「45323」は、「2月1日」という表示に修正されました。
次にC7セルのIF関数をコピーし、31日目にあたるAG7セルまで貼り付けてください。(オートフィルの利用でも可能)
そうすると、2024年2月は29日が月末日なので、30日、31日は表示されません。
オートフィルを使った関数のコピペの方法を使いは、以下の記事を参考にしてください。
手順3.『曜日』にTEXT関数を挿入
手順3では、日付に該当する『曜日』を入力します。
日付セルの下のC8セルに、以下のTEXT関数を挿入してください。
=TEXT(C7,"aaa")
次にC8セルのTEXT関数をコピーし、31日目にあたるAG8セルまで貼り付けてください。(オートフィルの利用でも可能)
手順4.『氏名』を入力
続いて、シフト管理したいメンバーの氏名を入力します。
手順5.シフトの勤務区分表を作成
続いて、シフト表の空いているスペースに、勤務区分表を作成します。
この勤務区分表のセルは、以降のステップで関数や数式で利用しないので、どの位置に作成しても問題ありません。
例えば、「A」であれば「6:00~9:00」、「有」であれば「有休」といったように、職場や活動の勤務パターンに合わせて、勤務区分のコードを決定してください。
セルの枠に罫線を引く場合は、セルを選択してから、「ホーム」タブの「罫線」コマンドから好みの罫線を選択してください。
複数のセルを1つのセルに結合したい場合は、結合したいセルを選択してから、「ホーム」タブの「セルの結合」コマンドから「セルの結合」を選択してください。
手順6.シフト表全体に罫線を引く
次に、シフト表全体に罫線を引きます。
罫線の太さや種類は好みの線を利用してください。また、必要に応じて行見出し、列見出しのセルの色を変更してください。
セルの罫線は、セルを選択してから、「ホーム」タブの「罫線」コマンドから罫線のスタイルを選択してください。
罫線の引き方や削除の方法を詳しく知りたい方は、以下の見出しを参考にしてください。
手順7.プルダウンを設定する
続いて、「A」「B」「有」「代」などの勤務コードをプルダウンリストから選択できるように設定します。
まずは、プルダウンに利用したい勤務区分コードを、シフト表の空いているセルに入力します。
次に、プルダウンを設定したいシフト表の一番左上のセルを選択してから、「データ」タブの「データの入力規則」をクリックします。
「データの入力規則」画面が表示されます。
入力値の種類は「リスト」を選択し、元の値は空いているセルに入力したコードのセル範囲を選択します。
そうすると、セルに▽ボタンが表示され、プルダウンリストから勤務区分を設定できるようになります。
他のセルにもプルダウンの設定をコピペする必要があります。
プルダウンを設定したセルを右クリックメニューからコピーします。
次に、プルダウンを設定したいセル範囲を選択してから、右クリックメニューの「形式を選択して貼り付け」を選択します。
「形式を選択して貼り付け」画面で「入力規則」にチェックを入れてから、「OK」を押して画面を閉じます。
そうすると、選択したすべてのセルにプルダウンの設定がすべて完了します。
プルダウンの設定方法を詳しく知りたい方は、以下の記事を参考にしてみてください。
手順8.日々の勤務区分を集計する
日々、どの勤務区分に何人が従事しているか分かりやすくするため、シフト表の下側に集計表を作成します。
下の図のように、「A」「B」「C」「D」など集計したい勤務区分の行を追加してください。
勤務区分を集計するために、以下のCOUNTIF関数を挿入します。
=COUNTIF(C$9:C$14,$B15)
参照するセルは表のサイズに合わせて、参考セルは調整してください。
また、他のセルにもコピーできるよう、$マーク(絶対参照)をつける位置は、下の緑下線の位置に付けて下さい。
👇COUNTIF関数の使い方は以下を参照
COUNTIF関数を挿入したセルをコピーし、他のセルにも数式を貼り付けします。
数式の貼り付けは、右クリックメニューの「貼り付けオプション」から「数式」を選択すると数式の貼り付けが可能です。
手順9.シフト管理表の完成
以上で、シフト管理表の完成です。
C4セル、E4セルの年月を変更すると、日付や曜日が自動で変更されることを確認できれば、シフト管理表の完成です。