最近見た
ページ
30
WORKDAY関数を使って、〇日営業日を求めよう
- 365
- web
- 2021
- 2019
- 2016
- 2013
- Web App
- 2011
- 2010
- 2007
- Starter
土日・祝日など休業日を除いた〇日前や〇日後の日付を求めたいことはありませんか?WORKDAY関数を使って簡単に求める方法を解説いたします。
WORKDAY関数で土日・祝日を除いた〇日前、〇日後の日付を求めよう!
WORKDAY(ワークデイ)関数は土日・祝日などの休業日を除いた稼働日を求めることができる関数です。 基準の日付から指定した稼動日数だけ前または後の日付を返します。
ここでは、WORKDAY関数の基本的な書式と機能について紹介します。
WORKDAY関数の書式
WORKDAY関数は次のように入力します。
=WORKDAY(開始日, 日数, [祝日])
WORKDAY関数は開始日から、指定した土日祝日を除く日数だけ前または後の日付を求めることができます。
土日だけ除くこともできますが、ここではOR関数でご紹介した祝日の一覧を使用して、土日祝日を除いて実際に求めてみたいと思います。
今回の例では、あらかじめB列に入力された基準となる日付から、A列に2営業日前、C列に3営業日後を求めたいと思います。
A列にB列から2営業日前、C列にB列から3営業日後の日付が表示されたと思います。
ステップアップ:特定の日が土日だったら前の日を求めたい
銀行の引き落とし日、給料日、毎月 日にちが決まっているものでも、土日や祝日だった場合、前の営業日や後の営業日にずれることがありますよね。
ここまでご紹介した方法ですと、意図した結果が得られないと思います。毎月特定日、その日が土日や祝日だった場合、前の営業日や後の営業日を求める方法を解説いたします。
特定日が土日や祝日だった場合、前日を求める式の例:
=WORKDAY(開始日+1, -1, [祝日])
特定日が土日や祝日だった場合、後日を求める式の例:
=WORKDAY(開始日-1, 1, [祝日])
今回の例では、毎月10日が休日だった場合、前の平日と後の平日をそれぞれ求めてみたいと思います。
まずA列に基準となる毎月10日を12か月分入力したいと思います。
ここでは分かりやすいように日付の後に曜日を表示し、色分けしておきます。
以下のページを参考に設定してみてください。
次にB列に10日が土日祝日だったら、前の平日を求めたいと思います。
(補足)A4+1で11日にし、1営業日前を算出したいのでマイナス1と入力します。そうすることで、10日が平日であれば、常に10日、土日祝日であればその前の平日が返されます。
同じようにC列には10日が土日祝日だったら、後の平日を求めたいと思います。
(補足)A4-1で9日にし、1営業日後を算出したいのでプラス1と入力します。そうすることで、10日が平日であれば、常に10日、土日祝日であればその後の平日が返されます。
ちなみに常に当月の10日を表示したい場合は、Date関数とToday関数を使います。
10日が土日祝日だったら、前の平日を求める場合
10日が土日祝日だったら、後の平日を求める場合
DATE関数で日付を表示しよう!
エクセルで年月日が別々のセルに入力されている値を、日付として一つのセルに表示させることができます。
EDATE関数やEOMONTH関数で支払日や満期日の日付を求めよう!
YEAR関数で日付に対応する年を、MONTH関数で日付に対応する月を求める方法も解説してます。
TODAY関数/NOW関数で日付や時刻を自動入力しよう
エクセルでファイルを開いた時の日時を自動取得して表示させる「TODAY関数」や 「NOW関数」を解説いたします。
更にIF関数を組み合わせると、常に次の10日を求めることができます。
10日が土日祝日だったら、前の平日を求める場合
8引数に次のように入力します。
引数 [開始日] IF(DATE(YEAR(TODAY()),MONTH(TODAY()),10)>=TODAY(),DATE(YEAR(TODAY()),MONTH(TODAY()),11),DATE(YEAR(TODAY()),MONTH(TODAY())+1,11)) [日数] -1 [祭日] syukujitsu!$A$2:$A$1014
10日が土日祝日だったら、後の平日を求める場合
9引数に次のように入力します。
引数 [開始日] IF(DATE(YEAR(TODAY()),MONTH(TODAY()),10)>=TODAY(),DATE(YEAR(TODAY()),MONTH(TODAY()),9),DATE(YEAR(TODAY()),MONTH(TODAY())+1,9))) [日数] 1 [祭日] syukujitsu!$A$2:$A$1014
ステップアップ2:土日以外を週末として求めたい
土日のように別の曜日を週末として求めたい場合はWORKDAY.INTL(ワークデイ・インターナショナル)関数を使います。
WORKDAY.INTL 関数は次のように入力します。
=WORKDAY.INTL(開始日, 日数, [週末], [休日])
週末がどの曜日で何日間あるかを示すパラメーターを引数の[週末]に指定します。 指定したパラメーターに基づいて、開始日から起算して指定した稼働日数だけ前または後の日付を返します。
週末番号 | 週末の曜日 |
---|---|
1 または省略 | 土曜日と日曜日 |
2 | 日曜日と月曜日 |
4 | 火曜日と水曜日 |
5 | 水曜日と木曜日 |
6 | 木曜日と金曜日 |
7 | 金曜日と土曜日 |
11 | 日曜日のみ |
12 | 月曜日のみ |
13 | 火曜日のみ |
14 | 水曜日のみ |
15 | 木曜日のみ |
16 | 金曜日のみ |
17 | 土曜日のみ |
引数の[週末]以外はWORKDAY関数と同じように入力してみてください。
おすすめ
ページ