Excelで日月休みの稼働日数を数える|NETWORKDAYS.INTLと休業日一覧
日曜・月曜が休みの施設など、土日休みではない日程表にはNETWORKDAYS.INTL関数を使えます。毎週の休みと臨時の休業日は別に指定します。WindowsのMicrosoft 365デスクトップ版で、架空の施設の予定を数える例です。現実の営業日や国の祝日を自動判定するものではありません。
開始日・終了日・臨時休業日を別のセルに置く
A1を「開始日」、B1を「終了日」、E1を「臨時休業日」にします。A2へ `=DATE(2026,11,10)`、B2へ `=DATE(2026,11,16)`、E2へ `=DATE(2026,11,11)` と入力します。DATEで作るのは日付として扱う値で、年は4桁にします。
この例では11月10日から16日まで、日曜と月曜を非稼働日とします。11月11日は説明用に設定した臨時休業日で、日本の祝日だという意味ではありません。実際の資料では、施設の予定表などで確認した休業日だけを一覧へ入れます。
曜日の文字列は月曜から7文字で指定する
週末の指定に使う文字列は、月曜・火曜・水曜・木曜・金曜・土曜・日曜の順です。1は非稼働日、0は稼働日を表します。日曜と月曜を休みにする今回の指定は `"1000001"` です。引用符を含めて、文字列として入れます。
日曜日が左端ではない点に注意してください。土日休みの既定値をそのまま使ったり、働く日を1と逆に解釈したりすると、数字が出ても意味が変わります。曜日を七つ書き出し、休みにした二か所が1かを確認します。
| 月 | 火 | 水 | 木 | 金 | 土 | 日 |
|---|---|---|---|---|---|---|
| 1:休み | 0:稼働 | 0:稼働 | 0:稼働 | 0:稼働 | 0:稼働 | 1:休み |
臨時休業日を除く前と後で比べる
C1を「曜日の休みだけ」、D1を「臨時休業日も除く」にします。C2へ `=NETWORKDAYS.INTL(A2,B2,"1000001")`、D2へ `=NETWORKDAYS.INTL(A2,B2,"1000001",$E$2)` と入力します。休日の引数には、今回は値の入ったE2だけを指定します。
この期間で曜日の条件に合うのは、11月10日から14日までの5日です。その中にある11日を臨時休業日として除くため、D2の期待値は4です。開始日や終了日は、稼働日の条件に合えば数えます。「期間の日数だから最後に1を引く」といった補正を加えないでください。
| 日付 | 曜日 | 今回の扱い |
|---|---|---|
| 11月10日 | 火 | 数える |
| 11月11日 | 水 | 臨時休業日なので除く |
| 11月12日 | 木 | 数える |
| 11月13日 | 金 | 数える |
| 11月14日 | 土 | 数える |
| 11月15日 | 日 | 毎週の休み |
| 11月16日 | 月 | 毎週の休み |
休業日の更新と、式の参照範囲を一緒に点検する
臨時休業日を追加する場合は、E列へ書き足すだけでなく、式の休日範囲にも追加したセルを含めます。今回の `$E$2` は一つのセルだけです。複数なら、実際に日付を入れた範囲を参照する形へ変更し、意図した日が除かれるか再計算結果を照合します。
この関数が数えるのは、指定条件に基づく日数です。半日営業や時間単位の稼働までは、今回の式では表していません。開始日が終了日より後の場合も、目的に合った期間かを先に確認します。エラーが出ないことを、予定表の内容の正しさと同一視しないようにします。
印刷した日数の横に、集計条件を残す
紙の予定表には「2026年11月10日~16日、日月休み、11月11日は臨時休業」と分かる説明を添えます。合計の4だけを載せると、どの休みを除いた数字なのかが伝わりません。臨時休業日一覧の確認日や版も、実際の運用に合わせて残します。
最後は日付を一日ずつ追って4日と照合し、配布するPDFや印刷プレビューで条件と合計が一緒に読めるか確認します。この例を現実の施設へ使うときは、曜日の規則と休業日を必ずその施設のものへ置き換えてください。
次に確認すること
曜日を月曜始まりの7文字で指定し、休日なしの5日と臨時休業日を除いた4日を比べます。実際の予定表では、休業日一覧と式の参照範囲を更新してから配布してください。
あわせて確認する
参考資料
- Microsoft:DATE function
https://support.microsoft.com/en-us/excel/functions/date-function
確認日:2026-10-03
有効な2026年11月の日付のみ。DATEを不正日付検証機能とはしない。
- Microsoft:NETWORKDAYS.INTL function
https://support.microsoft.com/en-us/excel/functions/networkdays-intl-function
確認日:2026-10-03
架空の日程表。国の祝日・現実の営業日・半日や時間単位は判定しない。例の両端は該当すれば数える。
出典は各記事の判断に必要な範囲で参照しています。機種・アプリ固有の操作は、他の環境で同一になることを保証しません。条件を置いた計算例と、メーカー等が明示した仕様を区別してください。