Excel関数で営業日を計算する方法をお探しですね。

広告

Excelで「土日祝を除いて何日後?」を自動計算する方法

仕事で納期や見積もりの有効期限を決めるとき、「土日祝日を除いて10日後っていつだっけ?」と、カレンダーを見ながら指で数えたことはありませんか?月をまたいだり、祝日が入ったりすると、数え間違いも起こりやすいですよね。

そんなときに便利なのが、ExcelのWORKDAY関数とNETWORKDAYS関数です。

この2つを使い分けられるようになると、営業日の計算がぐっと楽になります。

WORKDAY関数とNETWORKDAYS関数、何が違うの?

この2つの関数、名前は似ていますが、**役割がまったく違います**。

– **WORKDAY関数**:「〇営業日後の日付」を出してくれる
– **NETWORKDAYS関数**:「期間内に営業日が何日あるか」を数えてくれる

つまり、**日付を知りたいか、日数を知りたいか**で使い分けるんです。

たとえば、「見積書の有効期限を、今日から10営業日後にしたい」ならWORKDAY関数。

「プロジェクト開始から終了までに、実際に作業できる日は何日あるか」を知りたいならNETWORKDAYS関数を使います。

違いを表にまとめると、こんな感じです。

| 関数 | 何を求める? | どんなときに使う? | 基本の書き方 |
|—|—|—|—|
| WORKDAY | 〇営業日後の日付 | 納期、締切日、支払期限など | =WORKDAY(開始日, 日数, [祝日]) |
| NETWORKDAYS | 期間内の営業日数 | 作業日数、稼働日数、残り日数など | =NETWORKDAYS(開始日, 終了日, [祝日]) |

ちょっと注意したいのが、**開始日の扱い方**です。

WORKDAY関数は基本的に「開始日の翌営業日」から数え始めます。

一方、NETWORKDAYS関数は開始日と終了日の両方を含めて数えます。

このズレを知らないと「あれ、1日ずれてる?」となることがあるので、頭の片隅に置いておいてください。

WORKDAY関数で「〇営業日後」の日付を出す

WORKDAY関数は、「今日から5営業日後っていつ?」みたいな質問に答えてくれる関数です。

基本の書き方はこうです。

“`
=WORKDAY(開始日, 日数, [祝日])
“`

– **開始日**:基準になる日付
– **日数**:何営業日後か(マイナスもOK)
– **祝日**:除外したい祝日のリスト(省略すると土日だけ除外)

使い方の例

たとえば、A2セルに「2026/4/1」、B2セルに「5」と入れて、E2:E20に祝日リストがあるとします。

“`
=WORKDAY(A2, B2, E2:E20)
“`

これで、4月1日から5営業日後の日付が自動で出てきます。

土日と祝日をちゃんと飛ばしてくれるので、カレンダーを見なくてもOKです。

もし結果が「45758」みたいな数字で出てきたら、セルの表示形式が「日付」になっていないだけです。

右クリックで「セルの書式設定」から「日付」を選べば、ちゃんと日付表示になります。

マイナスで逆算もできる

日数にマイナスの値を入れると、**逆算**もできます。

たとえば、納品日の3営業日前に出荷したいときは、こう書きます。

“`
=WORKDAY(納品日, -3, 祝日リスト)
“`

これで、納品日から逆算して「いつまでに出荷すればいいか」が分かります。

請求書の発行日や、承認の締切日を決めるときにも便利です。

注意点:「当日を含むか」問題

会社によっては「受付日を含めて5営業日以内」みたいなルールがあったりしますよね。

このとき、単純に「5」と入れると、感覚より1日後ろにずれることがあります。

もし受付日も1日目に含めたいなら、日数を「4」にするなど、社内ルールに合わせて調整してください。

Excel関数と会社のルールが一致しているか、最初に確認しておくと安心です。

NETWORKDAYS関数で期間内の営業日数を数える

NETWORKDAYS関数は、「この期間に営業日は何日あるか?」を教えてくれる関数です。

基本の書き方はこちら。

“`
=NETWORKDAYS(開始日, 終了日, [祝日])
“`

– **開始日**と**終了日**:期間の始まりと終わり
– **祝日**:除外したい祝日のリスト

使い方の例

A2セルに「2026/4/1」、B2セルに「2026/4/30」、E2:E20に祝日リストがある場合、

“`
=NETWORKDAYS(A2, B2, E2:E20)
“`

これで、4月1日から30日までの間に、営業日が何日あるかが分かります。

この関数は**開始日と終了日の両方を含めて**計算します。

だから、両方とも営業日なら、その2日もカウントされます。

もし開始日を含めたくない場合は、開始日を1日ずらして `A2+1` にするなど、調整してください。

こんなときに便利

– プロジェクトの実作業日数を見積もるとき
– 月ごとの稼働日数を自動計算したいとき
– 「今月あと何日働ける?」を知りたいとき
– 売上目標を1営業日あたりに換算したいとき

単に日数を数えるだけじゃなくて、業務量や人員配置を考える基準にもなるのが、この関数の良いところです。

エラーを防ぐコツ

日付が**文字列**として入力されていると、正しく計算できないことがあります。

見た目は「2026/4/1」でも、Excelが日付として認識していないケースです。

また、祝日リストに余分な文字やスペースが混じっていると、祝日として除外されないこともあります。

祝日リストは毎年更新が必要なので、内閣府などの正確な情報をもとに管理しておくと安心です。

土日以外の休みにも対応できる「.INTL」バージョン

普通のWORKDAY関数とNETWORKDAYS関数は、土日を休みとして計算します。

でも、職場によっては「水曜定休」「日月休み」「週休3日制」なんてこともありますよね。

そんなときは、**WORKDAY.INTL関数**と**NETWORKDAYS.INTL関数**を使います。

「.INTL」が付くバージョンは、**休みにする曜日を自分で指定できる**んです。

基本の書き方

“`
=WORKDAY.INTL(開始日, 日数, [週末], [祝日])
=NETWORKDAYS.INTL(開始日, 終了日, [週末], [祝日])
“`

「週末」という引数が追加されています。

ここで、どの曜日を休みにするかを指定します。

週末の指定方法

数字で指定する方法と、文字列で指定する方法があります。

**数字で指定する場合**

– `1` または省略:土日休み
– `11`:日曜だけ休み
– `17`:土曜だけ休み

**7桁の文字列で指定する場合**

月曜から日曜まで順番に、営業日を「0」、休日を「1」で表します。

– 土日休み:`”0000011″`
– 水曜と日曜休み:`”0010001″`
– 火曜・土曜・日曜休み:`”0100011″`

この方法なら、週休3日制や変則的な定休日にも対応できます。

まとめ:使い分けのポイント

営業日計算で失敗しないためには、**最初に何を知りたいかをはっきりさせる**ことが大切です。

– 「〇営業日後の日付」を知りたい → **WORKDAY系**
– 「期間内の営業日数」を知りたい → **NETWORKDAYS系**
– 土日以外の休みがある → **INTL版**

そのうえで、祝日リストを含めるか、開始日をカウントするか、自社独自の休日があるかを確認してから数式を作りましょう。

ここまで整理できれば、納期管理も請求期限もプロジェクト計画も、ぐっと楽になります。

カレンダーを指で数える作業からも解放されますよ!

広告