excel NETWORKDAYS.INTL 関数:日付の期間を休日を除いて取得する

はじめに

excelの NETWORKDAYS.INTL 関数の使い方を紹介します。

NETWORKDAYS.INTL 関数は 2 つの日付の期間を休日を除いて取得します。

土日や休日を数えないで 1 月 1 日から 1 月 7 日までの経過日数を求めるときに使用します。

休日を除いた営業日数を計算した日付を取得するには「WORKDAY.INTL 関数」を使用します。

2 つの日付の期間を指定した単位で取得するには「DATEDIF 関数」を使用します。

目次

構文

使用例

解説

構文

NETWORKDAYS.INTL(開始日, 終了日)

開始日から終了日までの日数を土日を含めないで求めます。

NETWORKDAYS.INTL(開始日, 終了日, 週末, 休日)

週末に指定した曜日と休日に指定した日付は日数に含めません。

引数「開始日」    期間の開始となる日付を指定します。

引数「終了日」    期間の終了となる日付を指定します。

引数「週末」    省略できます。省略すると土日が休みです。

休日とする曜日を数値か 7 桁の文字列で指定します。

引数「休日」    省略できます。休日とする日付のセルの範囲を指定します。

引数「週末」

数値    文字列    週末

1 または省略    0000011    土曜日と日曜日

2    1000001    日曜日と月曜日

3    1100000    月曜日と火曜日

4    0110000    火曜日と水曜日

5    0011000    水曜日と木曜日

6    0001100    木曜日と金曜日

7    0000110    金曜日と土曜日

11    0000001    日曜日

12    1000000    月曜日

13    0100000    火曜日

14    0010000    水曜日

15    0001000    木曜日

16    0000100    金曜日

17    0000010    土曜日

文字列で指定するときは 0 が営業日、1 が休みです。月火水木金土日の順番に指定します。土日が休みなら0000011です。

使用例

"excel2021511-506-1" 

excel開始日のセル「B3」から終了日のセル「C3」までの経過日数を取得する。週末は土日。

=NETWORKDAYS.INTL(B3,C3)

"excel2021511-506-2" 

5 月 5 日から 5 月 8 日までの 4 日間を、引数「週末」の値を変化させたときにどうなるかを確認する。

=NETWORKDAYS.INTL("2017/5/5","2017/5/8",B3)

"excel2021511-506-3" 

5 月 5 日から終了日のセル「B8」までの経過日数を引数「休日」を指定して取得する。週末はなし。

=NETWORKDAYS.INTL("2017/5/5",B8,"0000000",$B$3:$B$5)

=NETWORKDAYS.INTL("2017/5/5",B8,"0000000",{"2017/5/4","2017/5/6","2017/5/8"})

"excel2021511-506-4" 

解説

引数「開始日」と引数「終了日」が同じ日なら 1 を取得します。その日が休日扱いなら 0 を取得します。

引数「開始日」より引数「終了日」が前の日なら負の値を取得します。1 日前の日なら、当日と前の日で -2 を取得します。

引数「週末」に0000000を指定すると、休みなしになります。1111111を指定すると日付に関係なく 0 を取得します。

引数「休日」にセルの範囲ではなく文字列で日付を指定したいときは{"日付1","日付2","日付3"・・・}のように配列で指定します。