エクセル関数で日付から休日を除いた~日後の営業日を求める!

休日を除いた、xx日後の支払日を求めたいという時、WORKDA関数を使うと、日付から計算して、支払日を求めることができます。エクセルWORKDA関数は、指定した日付から計算して、休日を除いた営業日を出してくれます。支払日、納品日、発送日などを求めるときに活躍します。土日だけでなく、指定した休日を除いて、日付を表示させることもできます。

年末年始や夏季休暇の場合も、この関数を使うと、この期間だけ除いて支払日、納品日、発送日を求めることができます。日付から計算して、稼働している営業日を求める、こんな便利な関数はありません。

 

 

WORKDAY関数

WORKDAY関数

開始日から起算して、土、日曜、指定された祝日を除く稼動日数だけ、前または後の日付に対応する値を返します。

WORKDAY関数の書式

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

開始日 起算日を指定します。
日数 開始日から起算して、週末や祭日を除く日数を指定します。 正の数を指定すると、起算日に日数を足した日付となり、負の数を指定すると、起算日に日数を引いた日付となりす。
祝日 祝日や休暇など、稼働日数の計算から除外する日付のリストを指定します。省略すると土、日曜だけが稼働日数の計算から除外されます。

 

 

土日を除いたx営業日後の日付を求める

支払期限日を、WORKDAY関数で計算して求めてみましょう。

支払開始日から計算して、15営業日後が支払期限日となっています。休日は、土日だけで祝日は稼働しています。

営業日とは、週末や祭日を除いた日のことです。

なので、ここで求めるのは、支払開始日から土日を除いた、15日後の日付です。

1.C2に、支払期限日を求める式を入力しましょう。

 

 

C2 =WORKDAY(B2,15)

「43182」が返されました。

C2は、起算日から土日だけを除いた、支払期限日を求める式なので、引数「祝日」は省略します。

起算日「2018/3/2」から、土日だけを除いた15営業日後が返されます。

次に、シリアル値を「セルの書式設定」から日付の表示形式にしましょう。

2.「C2」のセルで右クリックして、「セルの書式設定(F)」→「表示形式」タブで「日付」を選択しましょう。「種類」から必要に応じて、日付の表示形式を選択します。

 

3.「2018/3/23」が表示されました。

4.「C2」の式をドラッグして、「C3:C4」にコピーしましょう。

5.支払期限日が表示されました!

 

支払期限日を見てみましょう。

支払開始日から、土日だけを除いた15日後の日付が表示されています!

 

祝祭日を除いたx営業日後の日付を求める

土日、祝日を除いた支払期限日をWORKDAY関数で計算します。

支払期限は、支払開始日から15営業日後です。休日は、土日、祝日です。

なので、ここで求めるのは、支払開始日から土日と祝日を除いた、15日後の日付です。

C2に、支払開始日から土日と祝日を除いた、15営業日後を表示させる式を入力しましょう。

 

C2 =WORKDAY(B2,15,$F$2:$F$21)

「43185」が返されました。

「セルの書式設定」から日付の表示形式にしましょう。

「2018/3/26」で表示されました。

「C2」の式をドラッグして、「C3:C4」にコピーしましょう。

土日と祝日を除いた、15営業日後が表示されました!

 

 

土日と特定の日を除いたx営業日後の日付を求める

土日、特定の日を除いた支払期限日をWORKDAY関数で計算します。

支払期限は、支払開始日から15営業日後です。休日は、土日、特定の日です。

特定の休日は、「E2:E3」に入力してあります。

C2に、支払開始日から土日と特定の休日を除いた、15営業日後を表示させる式を入力しましょう。

 

C2 =WORKDAY(B2,15,$F$2:$F$21)

「43182」が返されました。

「セルの書式設定」から日付の表示形式にしましょう。

「2018/3/23」で表示されました。

「C2」の式をドラッグして、「C3:C4」にコピーしましょう。

土日と特定の休日を除いた、15営業日後が表示されました!

最終営業日を求める

月の最終営業日を、WORKDAY関数で計算することができます。休日は土日と祝祭日です。

「E2:E21」に祝日が記載されています。

C2に、日付から土日と祝祭日を除いた、月の最終営業日を表示させる式を入力しましょう。

 

C2 =WORKDAY(A2,-1,$E$2:$E$21)

「43159」が返されました。

「セルの書式設定」から日付の表示形式にしましょう。

「2018/2/28」で表示されました。

最終営業日を求めたい月の、翌月の1日から「-1」を引くと月の最終営業日が計算できます。

A2は「2018/3/1」です。

なので、B2には前の月、2月の最終営業日「2018/2/28」が返されます。

「C2」の式をドラッグして、「C3:C4」にコピーしましょう。

最終営業日が表示されました!

 

 

WORKDAY.INTL 関数

土日以外の曜日が休日の時の、x営業日後の日付を求めることができます。

土日以外の曜日が休日の時は、WORKDAY.INTL 関数で土日以外の曜日を休日として指定して、営業日を計算することができます。

WORKDAY.INTL 関数

WORKDAY.INTL 関数は「開始日」「日数」「休日」はWORKDAY関数と同じです。

WORKDAY関数は、土日を稼動日数から除いて開始日から起算しますが、WORKDAY.INTL 関数は、指定した土日以外の休日を稼動日数から除いて開始日から起算します。

土日以外の休日は週末番号で指定します。

WORKDAY.INTL 関数の書式

WORKDAY.INTL(開始日, 日数, [週末], [休日])

開始日 起算日を指定します。
日数 開始日から起算する稼働日数を指定します。 正の数を指定すると、起算日に日数を足した日付となり、負の数を指定すると、起算日に日数を引いた日付となりす。
週末 週末にする曜日を指定します。「週末」は、週末を示す週末番号または文字列で指定します。省略すると土、日曜が週末になります。
休日 稼働日数の計算から除外する日付を指定します。

WORKDAY.INTL 関数の週末番号

週末番号 週末の曜日
1 または省略 土曜日と日曜日
2 日曜日と月曜日
3 月曜日と火曜日
4 火曜日と水曜日
5 水曜日と木曜日
6 木曜日と金曜日
7 金曜日と土曜日
11 日曜日のみ
12 月曜日のみ
13 火曜日のみ
14 水曜日のみ
15 木曜日のみ
16 金曜日のみ
17 土曜日のみ

 

 

休日が水曜日のみの場合のx営業日後の日付を求める

週末は水曜日のみです。

支払期限は、支払開始日から15営業日後です。

水曜日と祝日を除いた支払期限日を、WORKDAY.INTL 関数で計算してみましょう。

C2に式を入力しましょう。

 

C2 =WORKDAY.INTL(B2,15,14,$F$2:$F$21)

「43178」が返されました。

「水曜日」の「週末番号」は「14」です。起算日「2018/3/2」から、水曜日と祝日を除いた15営業日後が返されます。

「セルの書式設定」から日付の表示形式にしましょう。

「2018/3/19」が表示されます。

「C2」の式をドラッグして、「C3:C4」にコピーしましょう。

水曜日と祝日を除いた、15営業日後の支払期限日が返されました!

特定の休日も指定できます

WORKDAY.INTL 関数の引数、「休日」に夏季休暇などの休暇を指定すると、起算日から休暇を除いた営業日を計算することができます。祝祭日、特別休暇など、指定した休暇が起算日から除かれて計算されます。

WORKDAY.INTL 関数は機能が追加された関数です

WORKDAY.INTL 関数は2010エクセルからできた関数で、WORKDAY関数に新機能を追加した関数です。

WORKDAY.INTL 関数を使用すると、土日だった週末が他の曜日に変わった場合でも、WORKDAY.INTL 関数をそのまま使えます。「週末番号」を修正するだけでいいです。「週末番号」を修正するだけでどのような「週末」にでも対応できます。

目的に応じて、WORKDAY関数とWORKDAY.INTL 関数は使い分けましょう。

こちらの記事もご覧ください。⇒エクセルで生年月日から今日の年齢を計算する方法