ある日付けから指定した日数を休日を除いてカウントし、その日付を返してくれるのがWORKDAY関数 です。商品の納期等を管理するのに便利な関数です。
- 例:2021年12月1日から3日後…12月4日(土)と12月5日(日)を除いて2021年12月6日を返します。
カレンダーを指折り数えて計算していては間違いのもとです。WORKDAY関数 で仕事にまつわる日数を正しく管理しましょう。
WORKDAY関数とWORKDAY.INTL関数の違い
WORKDAY関数 はWORKDAY.INTL関数 は、休日の指定に大きな違いがあります。
- WORKDAY関数
土日は全て休日扱いにされます。祝日はデータ入力で指定できます。
- WORKDAY.INTL関数
各曜日ごとに自分で休日を指定できます。祝日はWORKDAY関数 と同じです。
WORKDAY関数 は土日を問答無用で除外します。WORKDAY.INTL関数 は休日を自分の好きな曜日で設定できます。
使い分けは以下のようになります。
- 土日が休み…WORKDAY関数
- 土日以外にも休みがある…WORKDAY.INTL関数
WORKDAY関数の使い方
=WORKDAY(開始日, 日数, [祝日])
…開始日 から指定した日数 に対応する値(日付)を返します。土日と祝日 は除きます。
- 開始日
省略不可。起算日を指定します。
- 日数
省略不可。開始日 から休日を除いた求めたい日付までの日数を指定します。負の値も指定できます。
- 祝日
省略可。土日以外の除きたい日をセル範囲で指定します。
- 開始日(起算日)を指定する
- 求めたい日付までの日数 を指定する
- 土日以外に除きたい日(祝日、大型連休など)をセル範囲で指定する
WORKDAY関数のサンプル
=WORKDAY(B3,C3,$F$2:$F$3)
C3が1なので2021/11/2から1日後の日付を返しますが、2021/11/3が祝日 で指定されているので2021/11/4を返します。
- 戻り値はシリアル値です。書式設定で適切な日付表示にしてください。
- #VALUE!が返された場合、数式内で無効な日付を参照しています。開始日 と祝日 の参照先を確認してください。
WORKDAY.INTL関数の使い方
土日以外を休日としたい場合はWORKDAY.INTL関数 を使用します。「平日が休みで土曜日は出勤」等はこの関数の出番です。
=WORKDAY(開始日, 日数, [週末],[祝日])
- 開始日
省略不可。起算日を指定します。
- 日数
省略不可。開始日 から休日を除いた求めたい日付までの日数を指定します。負の値も指定できます。
- 週末
省略可。休日にする曜日を指定します。週末番号 で指定する場合は以下の通りです。
- 週末番号 にない数値で指定すると#NUM!を返します。
週末番号 週末の曜日 1 または省略 土曜日と日曜日 2 日曜日と月曜日 3 月曜日と火曜日 4 火曜日と水曜日 5 水曜日と木曜日 6 木曜日と金曜日 7 金曜日と土曜日 11 日曜日のみ 12 月曜日のみ 13 火曜日のみ 14 水曜日のみ 15 木曜日のみ 16 金曜日のみ 17 土曜日のみ 文字列値 でも指定できます。
- 文字列値 は7文字(“”で囲むこと)
- 開始は月曜から
- 0は平日
- 1は休日
- 文字列に使用できる文字は、0および1のみ
たとえば、“0010001” と指定すると水曜日と日曜日が休日になります。
- “1111111”(全て休日)は無効です。#VALUE!を返します。
- 祝日
省略可。土日以外の除きたい日をセル範囲で指定します。
- 開始日(起算日)を指定する
- 求めたい日付までの日数 を指定する
- 休日にしたい曜日を指定する。週末番号 で指定できない場合は文字列値 を使用する。
- 土日以外に除きたい日(祝日など)をセル範囲で指定する
WORKDAY.INTL関数のサンプル
=WORKDAY.INTL(B3,C3,”0100001″,$F$2:$F$3)
引数週末 を“0100001”で指定しているので火曜日と日曜日が休日になります。日数 C2が3なので2021/11/1から3日後の日付を返しますが、2021/11/2が火曜日、2021/11/3が祝日 で指定されているので2021/11/6を返します。
引数週末 を週末番号 で指定する場合は、数式を途中まで入力すると候補がドロップダウンリストで表示されます。覚える必要はありません。
とても便利な関数ですが、祝日 は個別設定なので面倒です。次の項目で祝日一覧をGoogleカレンダーからダウンロードできるマクロファイルを紹介します。
WORKDAY関数に指定する祝日一覧を取得できるマクロ
別記事で紹介しているカレンダーで祝日を一括取得できます。よかったらダウンロードしてみて下さい。
祝日一覧は対象ファイルのシート設定C列にダウンロードされます。シートの保護を解除してコピペするか、ファイル内のCSV出力機能を使ってCSVファイルを作成、コピペして下さい。
年間通じて休みが不定期な業態の会社も、このファイルを使用すれば便利です。カレンダー上で設定した休日をCSVファイルで一括出力してくれるので、それを引数祝日 に参照させてください。
WORKDAY関数とWORKDAY.INTL関数で休日/祝日を除外した日付を返す
サンプルは工期から納期を算出しましたが、会社の業態によって色々な使い道があると思います。指折り数える作業はミスの元です。WORKDAY関数 とWORKDAY.INTL関数 で日付を管理するようにしましょう。