エクセルのWORKDAY関数を使いこなす!営業日の計算と効率化のコツ

当ページのリンクには広告 (Amazonアソシエイト含む) が含まれています。
アイキャッチ

「指定した営業日数前後の日付を求めるにはどうしたらいいんだろう?」
このように悩んだことはありませんか?


土日を除いた営業日だけを計算したい

祝日リストを使って正確な計算をしたい

その場合は、ワークシート関数の「WORKDAY関数」を
使用すると解決します!


そんな時に便利なのが、エクセルのWORKDAY関数です。

この記事では、初心者にもわかりやすく、WORKDAY関数の基本的な使い方から、祝日リストを使った応用的な使い方までを丁寧に解説します。

WORKDAY関数を使えば、土日や祝日を自動で除外して指定日から何営業日後の納期を計算できるだけでなく、祝日リストを活用して正確な営業日スケジュールを作成したり、日付計算を驚くほど簡単に行うことができます!

基本的な使い方から応用的なテクニックまで、初心者でもすぐに実践できる内容です。
ぜひ最後までお読みください。


【 この記事の概要 】

よく使う度
難しさ
覚えておくと安心度

関数を使いこなせれば、エクセル作業が何倍も速くなり、ミスも激減します。

でも、どこから始めればいいか迷いますよね?

初心者でもわかりやすくステップアップできる本があれば、効率的にスキルを伸ばせますよ!

目次

この記事を見てできるようになること

この記事を読めば、以下のことができるようになります。

WORKDAY関数の基本とできることを徹底解説!

エクセルのWORKDAY関数は、「ある日から指定したの営業日後の日付を求める」ことができる便利な関数です。

土日や祝日を自動で除外してくれるので、納期管理やスケジュール作成で重宝します。


WORKDAY関数で営業日を求めるとは?

例えば、次のような場面で使用すると作業が効率化することができます。

  • 特定の日付から指定した営業日後の日付を知りたいとき
  • 土日を除いた業務スケジュールを作成したいとき
  • 祝日を考慮した正確な日付計算を行いたいとき

これから、WORKDAY関数がどのように役立つか、基本的な機能を詳しく解説していきます!

スポンサーリンク

WORKDAY関数の構成と基本操作をマスターする方法

WORKDAY関数は、指定した開始日から一定の日数後の営業日を求めるための関数です。

土日や祝日を除外して計算できるため、営業日数の管理や納期計算にとても便利です。

WORKDAY関数の構成

スクロールできます
引数内容
開始日 (必須)計算の基準となる日付を指定します。 (例:2024/11/01)
日数 (必須)開始日から進めたい営業日数を指定します。
マイナスの指定も可能です 。(例:5)
[祝日リスト] (任意)祝日を含む範囲を指定します。計算から除外されます。 (例:A1:A10)

より詳しい情報は、Microsoft公式 – WORKDAY 関数を参照してみてください。

WORKDAY関数の使用例

セル「A1」入力されている「2024/12/06」から、「3営業日後」の日付を計算する

=WORKDAY(A1,3)
WORKDAY関数の使用結果

WORKDAY関数で祝日を設定する方法

引数の [祝日リスト] を活用することで、WORKDAY関数の計算精度が大幅に向上します。

以下の手順で設定方法を確認してみましょう。

祝日を使用した数式

まず、別シートを作成し、そこに祝日リストをまとめておきます。

祝日をまとめたリスト

その状態で、WORKDAY関数を使用し引数に「祝日リスト」を指定します。

=WORKDAY(A1,3,祝日!B2:B20)
WORKDAY関数で祝日を設定する方法

祝日の取得方法

祝日リストを簡単に取得するには、以下の方法がおすすめです。

WORKDAY関数で失敗しないための注意ポイント4選

WORKDAY関数を使用するとき、計算が思った通りにいかないことがあります。

ここでは、重要な注意点を4つに絞って解説します。

注意1. 開始日が非営業日(休日)の場合 : 1日ずれる可能性があります。

問題点

開始日が土日や祝日などの非営業日の場合、計算が次の営業日からスタートし、「1日ずれる」結果になります。

また、祝日リストにミスがある可能性があります。

対策

開始日を営業日に設定するか、開始日が非営業日でも意図した結果になるよう計算を確認してください。

=WORKDAY(A1,3,祝日!B2:B22)

2024/10/12(土)が非営業日、また2024/10/14 (月)が祝日のため、2024/10/15(火曜日)から計算開始。
 → 結果: 2024/10/17(水)

開始日が非営業日(休日)の場合 | 1日ずれる可能性があります。

注意2. 祝日リストの設定ミス

問題点

祝日リストを正しく指定しないと、祝日が営業日に含まれ、計算結果がずれる原因になります。

対策

  • 別シートに祝日リストを作成し、正確なセル範囲を指定してください。
  • 最新の祝日情報を定期的に更新し、空白や重複がないか確認しましょう。

もう一度「祝日の取得方法」を見る。

注意3. 日数がマイナスの場合の挙動

問題点

日数がマイナスの場合、過去の日付を計算しますが、意図しない結果になることがあります。

対策

日数がマイナスの値である場合、その挙動を事前に確認し、目的に合った結果になるか検証してください。

=WORKDAY(G1,-3,祝日!B2:B22)
注意3. 日数がマイナスの場合の挙動
スポンサーリンク

WORKDAY関数以外も!日付計算で使えるエクセル関数一覧

以下の表を参考に、計算したい内容に応じた関数を見つけてください。

「これを調べたい場合はこちら」をクリックするような感覚で目的に合わせた関数を選びましょう!

スクロールできます
目的使用する関数説明
指定日から営業日単位で
日付を計算したい
WORKDAY関数指定した日付から特定の営業日後を
計算します(土日・祝日を除外)。
2つの日付の間の営業日数を
計算したい
NETWORKDAYS関数開始日と終了日の間の営業日数を
計算します(土日・祝日を除外)。
土日以外の週末を設定して
日付計算をしたい
WORKDAY.INTL関数指定日から特定の営業日後を計算。
週末のパターンを柔軟に変更可能。
土日以外の週末を設定して
営業日数を計算したい
NETWORKDAYS.INTL関数開始日と終了日の間の営業日数を計算。
週末のパターンを柔軟に変更可能。
日付から「年」「月」「日」の
差を求めたい
DATEDIF関数2つの日付の間の期間を年、月、日単位で
計算します(年齢や勤務年数の計算に便利)。
指定日から数ヶ月前後の
日付を求めたい
EDATE関数指定日から特定の月数前後の日付を
計算します(契約更新日や支払期日などの計算に便利)。
指定日から数ヶ月後の
月末日を求めたい
EOMONTH関数指定日から特定の月数後の月末日を
計算します(給与締め日や請求締め日などに便利)。
日付を年・月・日から
作りたい
DATE関数年、月、日を指定して日付を
作成します(計算式や他の関数と組み合わせて使用可能)。

適切な関数の選び方をご紹介

2つの日付の間の「営業日数」を求めたい

この場合はNETWORKDAYS関数を使用しましょう。

NETWORKDAYS関数は、「開始日」と「終了日」を指定して、その間の営業日数(平日から土日と祝日を除外した日数)を計算します。

  • 開始日 : 2023/11/01
  • 終了日 : 2023/11/30
  • 計算式 : =NETWORKDAYS(DATE(2023,11,1), DATE(2023,11,30))
  • 結果 : 21営業日
指定した日付から、「営業日」を基準にして「日数後」の日付を求めたい

この場合はWORKDAY関数を使用しましょう。

WORKDAY関数は、指定した開始日から特定の営業日数後の日付を計算します(土日と祝日を除外)。

  • 開始日  : 2023/11/01
  • 営業日数 : 5日後
  • 計算式  : =WORKDAY(DATE(2023,11,1), 5)
  • 結果   : 2023/11/08(水曜日)
週末が金曜・土曜の場合にスケジュールを計算したい

この場合はWORKDAY.INTL関数を使用しましょう。

WORKDAY.INTL関数は、土日以外の休日パターンを指定できる関数です。
例えば、金曜と土曜を週末に設定する場合は「0000011」という文字列を指定します。

  • 開始日  : 2023/11/01
  • 営業日数 : 5日後
  • 週末   : 金曜・土曜
  • 計算式  : =WORKDAY.INTL(DATE(2023,11,1), 5, "0000011")
  • 結果   : 2023/11/09(木曜日)
2つの日付の間の「日数」「月数」「年数」を知りたい

この場合はDATEDIF関数を使用しましょう。

DATEDIF関数は、2つの日付の間の差を「年」「月」「日」単位で計算できます。

  • 開始日  : 2023/01/01
  • 終了日  : 2023/11/30
  • 計算式  : =DATEDIF(DATE(2023,1,1), DATE(2023,11,30), "D")
  • 結果   : 333日

他にも以下のような計算が可能です:

単位結果
“Y”経過年数
“M”経過月数
“D”経過日数
指定した日付から数ヶ月後の同じ日付を求めたい

この場合はEDATE関数を使用しましょう。

EDATE関数は、指定した日付から特定の月数前後の日付を計算します。

  • 開始日  : 2023/01/15
  • 月数   : 6ヶ月後
  • 計算式  : =EDATE(DATE(2023,1,15), 6)
  • 結果   : 2023/07/15
指定した日付から数ヶ月後の月末日を求めたい

この場合はEOMONTH関数を使用しましょう。

EOMONTH関数は、指定した日付から特定の月数後の月末日を計算します。

  • 開始日  : 2023/01/15
  • 月数   : 2ヶ月後の月末日
  • 計算式  : =EOMONTH(DATE(2023,1,15), 2)
  • 結果   : 2023/03/31
スポンサーリンク

この記事のまとめ

WORKDAY関数は、エクセルで営業日計算を効率的に行うための便利な関数です。

この記事では、基本的な使い方から祝日リストを活用した応用例、注意ポイントまでを詳しく解説しました。

ポイントのおさらい

さらに学ぶために

WORKDAY関数の基本をマスターしたら、他のエクセル関数や自動化ツールも活用して、さらに作業効率を向上させましょう。

あわせて読みたい
サイトマップ このページは、本サイトの記事を分かりやすくまとめました。ぜひご覧ください。 目次 「VBA」を見る 「Officeスクリプト」を見る 「ワークシート関数」を見る 「Python...
スポンサーリンク
よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次