更新日:、 作成日:

エクセル 勤務期間や営業日数を求める日付関数

はじめに

365202120192016:対応

エクセルの勤務期間や営業日数を求める日付関数の使い方を紹介します。

入力した開始日と終了日から経過した日数を求められます。

週末や休日、欠勤日などを除いた日数を求められます。

日数や月数を計算する方法は「日付の日数計算をする」をご覧ください。

単純に期間を求める

この方法では、週末や休日など休みを考えないで単純に経過した日数を求めます。

セル「B3」に開始日を入力します。セル「C3」に終了日を入力します。

日数を求める

日数を求めるには =C3-B3+1 を入力します。

1

終了日から開始日を引いて日数を求められます。 +1 をしているのは、勤務開始日を 1 日と数えるためです。開始日と終了日を同じにすると 0 日になるため 1 日少ないことがわかります。

週数を求める

週数を求めるには日数を 7 で割ります。1 ~ 6 日間の勤務を 0 週とするか 1 週とするかの両方のやり方を紹介します。

0 週とするには =INT((C3-B3+1)/7) を入力します。

1 週とするには =ROUNDUP((C3-B3+1)/7,0) を入力します。

2

0 週とするには「INT 関数」を使用して小数点を切り捨てています。

1 週とするには「ROUNDUP 関数」を使用して小数点を切り上げています。

月数を求める

1 ヵ月未満の日数を 0 ヵ月とするか 1 ヵ月とするかの両方のやり方を紹介します。

0 ヵ月とするには =DATEDIF(B3,C3,"M") を入力します。

1 ヵ月とするには =(YEAR(C3)*12+MONTH(C3))-(YEAR(B3)*12+MONTH(B3))+1 を入力します。

3

0 ヵ月とする方法では、「DATEDIF 関数」を使用して満月数を求められます。1/15 ~ 2/14 までは 0 ヵ月になります。2/15 から 1 ヵ月と計算されます。

1 ヵ月とする方法では、「YEAR, MONTH, DAY 関数」を使用して、年に 12 をかけて月として扱っています。 終了月-開始月+1 を計算しています。

年数を求める

年数を求めるには =DATEDIF(B3,C3,"Y") を入力します。

年内の月数を求めるには =DATEDIF(B3,C3,"YM") を入力します。

4

DATEDIF 関数」を使用して満年数を求められます。2016/1/15 ~ 2017/1/14 までは 0 年になります。2017/1/15 から 1 年と計算されます。

休日を除いた日数を求める

この方法では、週末や休日、欠勤日などを除いた日数を求めます。

5

休日などを除いて日数を求めるには「NETWORKDAYS.INTL 関数」を使用します。

セル「B3」に開始日を入力します。セル「C3」に終了日を入力します。

土日が週末

土日を週末として日数を求めます。

=NETWORKDAYS.INTL(B3,C3)
6

開始日と終了日だけを指定すると、自動で土日が週末として扱われます。

土日以外が週末

月曜日を週末として日数を求めます。

=NETWORKDAYS.INTL(B3,C3,"1000000")
7

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

休日や欠勤日を指定

週末に加えて休日または欠勤日を除いて日数を求めます。

=NETWORKDAYS.INTL(B3,C3,1,F3:F5)
=NETWORKDAYS.INTL(B3,C3,"0000000",F3:F5)
8

週末に 1 を指定すると土日が週末になります。

週末を除外したくないときは 0000000 を入力して週末をなしにできます。

休日や欠勤日の日付が入ったセルを範囲指定します。その日付が休日として日数から除外されます。