営業日の日数を数えるときは、NETWORKDAYS関数を使います。土日は自動で除かれ、祝日は別に一覧を作って渡します。「5営業日後」を出したいときはWORKDAY関数です。
■ 先に祝日の一覧を作る
空いている列に、休みの日付を1日1セルで並べます。ここでは A2:A3 に次の2日を入れた例で説明します。
2026/11/3(文化の日)
2026/11/23(勤労感謝の日)
会社独自の休業日も同じ列に足せば、営業日の計算に反映されます。
■ 営業日数を数える(NETWORKDAYS)
開始日が D1(2026/11/2)、終了日が D2(2026/11/30)のとき、
=NETWORKDAYS(D1,D2,A2:A3)
試した結果:19
祝日を渡さず、土日だけ除く場合は
=NETWORKDAYS(D1,D2)
試した結果:21
開始日と終了日の両方が数に含まれます。
■ ○営業日後・○営業日前の日付を出す(WORKDAY)
5営業日後:
=WORKDAY(D1,5,A2:A3)
試した結果:2026/11/10
5営業日前:
=WORKDAY(D2,-5,A2:A3)
試した結果:2026/11/20
答えが 46336 のような数字で出たときは、セルの表示形式を「日付」に変えます。
■ その日が営業日かどうかを判定する
1日だけ範囲にして数えると、営業日なら1、休みなら0になります。
=IF(NETWORKDAYS(A2,A2,$A$2:$A$3)=1,"営業日","休み")
試した結果:11/3は「休み」、11/4は「営業日」
※祝日の範囲は、下にコピーしてもずれないよう $ で固定します。
■ 土日以外が休みの会社(NETWORKDAYS.INTL)
日曜だけ休みなど、休みの曜日が違うときは、NETWORKDAYS.INTL関数を使います。3つ目に休みの曜日の番号を入れます。
=NETWORKDAYS.INTL(D1,D2,11,A2:A3)
11は「日曜だけ休み」。試した結果:23
主な番号:1=土日、2=日月、7=金土、11=日曜のみ、12=月曜のみ。
WORKDAY.INTL関数も同じ形で使えます。
■ うまくいかないとき
・数字が日付にならない:表示形式を「日付」にします。
・祝日が除かれない:祝日のセルが文字ではなく日付になっているか確認します。左寄せで表示されていたら文字です。
・終了日が開始日より前:答えがマイナスになります。日付の前後を確かめます。
・祝日に土日が混ざっている:問題ありません。二重には引かれません。
■ 向かない場合
半休や時間単位の稼働日、拠点ごとに休みが違う表は、関数を重ねるより表の作りから整えたほうが楽なことがあります。自分で組み直す時間がないときは、専用の調整サービスもあります。