みんなのエクセル表計算
中級

【Excel】WORKDAY関数-開始日から稼動日数だけ前or後の日付のシリアル値を求める-


(約文字)

2019-12-10

【Excel】WORKDAY関数-開始日から稼動日数だけ前or後の日付のシリアル値を求める-

【Excel】WORKDAY関数-開始日から稼動日数だけ前or後の日付のシリアル値を求める-

WORKDAY関数とは

エクセルの「WORKDAY関数(ワーク・デイ)」は開始日から稼動日数だけ前or後の日付のシリアル値を返す関数です。

まず結論

WORKDAY関数を使うと、開始日から稼動日数だけ前or後の日付のシリアル値をことができます。まずは開始日、日数の意味を押さえ、使用例と注意点を確認すると実務で使い分けやすくなります。

  • このページで分かること
  • WORKDAY関数でできることと基本の使いどころ
  • 構文と引数の意味
  • WORKDAY関数の使用例

開始日から起算し指定された稼動日数だけ前or後の日付に対応するシリアル値を返します。稼動日は、土曜・日曜・指定された祝日を除く日です。納品書の支払日、発送日、作業日数などの計算時に、週末や祝日を除くことが簡単です。

週末がどの曜日で何日間あるかを示すパラメーターを使用し、開始日から起算して指定した稼働日数だけ前or後の日付に対応するシリアル値を計算する場合は、WORKDAY.INTL関数を使用するのがオススメです。

構文と引数

  • 365
  • 2019
  • 2016
  • 2013
  • 2010
  • 2007

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

引数 必要性 内容
開始日 必須 起算日を表す日付を指定します。
日数 必須 開始日から起算して、週末や祭日を除く週日の日数を指定します。日数に正の数を指定すると起算日より後の日付となり、負の数を指定すると起算日より前の日付となります。
[祝日] [省略可] 国民の祝日や長期休暇など、稼働日数の計算から除外する日付のリストを指定します。日付を含む一連のセルか、日付を示すシリアル値の配列定数を指定できます。

ポイント:日付はDATE関数を使うか、他の数式or他の関数の結果として指定します。例えば2019年12月10日を指定する場合は、DATE(2019,12,10) とします。日付を文字列として入力した場合、エラーが発生することがあります。

WORKDAY関数の解説

  • ・Excel では日付を連続したシリアル値として計算が行われます。既定では、1900年1月1日がシリアル値1として保存され、2019年12月10日は1900年1月1日から43809日後に当たるので、シリアル値は43809になります。(これはDATEVALUE("2019-12-10"))で計算できます。
  • ・引数に無効な日付を指定すると、エラー値#VALUE!が返されます。
  • ・開始日と日数との和が無効な日付である場合は、エラー値#NUM!が返されます。
  • ・日数に整数以外の値を指定すると、小数点以下が切り捨てられます。
出典:Microsoft - Office サポート

WORKDAY関数の使用例

開始日から10営業日後の日付を求める

=WORKDAY("2024/1/1",10)

2024/1/15 と表示されます。土曜日と日曜日を除いた10営業日後の日付を返します。

5営業日前の日付を求める

=WORKDAY("2024/3/15",-5)

2024/3/8 と表示されます。日数に負の数を指定すると、開始日より前の営業日を返します。

関連する関数

  • DATE関数:指定された日付に対応するシリアル値を求める
  • EDATE関数:開始日から起算し指定月数だけ前or後の日付に対応するシリアル値を求める
  • EOMONTH関数:開始日から起算し指定月数だけ前or後の月の最終日に対応するシリアル値を求める
  • NOW関数:現在の日付と時刻に対応するシリアル値を求める
  • TIME関数:指定した時刻に対応するシリアル値を求める
  • TODAY関数:現在の日付に対応するシリアル値を求める
  • WORKDAY関数:開始日から起算して、指定した稼動日数だけ前or後の日付に対応するシリアル値を求める
  • WORKDAY.INTL関数:週末の曜日と日数を示し、開始日から起算して、指定した稼動日数だけ前or後の日付に対応するシリアル値を求める

よくある質問

Q. WORKDAY関数は何をするときに使いますか?

WORKDAY関数は、開始日から稼動日数だけ前or後の日付のシリアル値をときに使います。 とくに DATE関数 など近い関数との違いを合わせて押さえると、使い分けしやすくなります。

Q. WORKDAY関数がうまく動かないときは何を確認すればよいですか?

まず 開始日、日数 の指定方法を見直し、開始日と終了日、表示形式、日付のシリアル値として認識されているか を確認してください。

よくある失敗例・エラー対処

WORKDAY関数で期待通りの結果にならないときは、次の点を確認してください。

  • 開始日、日数 の指定が関数の仕様どおりか確認する
  • 開始日と終了日の前後関係が正しいか確認する
  • 日数・月数・年数のどの単位で結果を見たいかを確認する

まとめ

このページでは、WORKDAY関数について以下を確認しました。

  • ・WORKDAY関数でできることと基本の使いどころ
  • ・構文と引数の意味
  • ・WORKDAY関数の使用例