- 公開日:
エクセルで日数計算する際に初日を含む方法
エクセルを使って日数を計算する際、特に初日を含む場合は計算方法に注意が必要です。
日付関数を使って簡単に計算できますが、初日を含めるかどうかで結果が変わってきます。
この記事では、エクセルで初日を含む日数計算の方法を詳しく解説していきます。
日数計算では初日が含まれない?
例えば、6月1日~6月20日だとイメージでは「20日間」となりますが、日数は19日になります。
日数には、以下の考え方があります。
- 通算日数:開始日と終了日の両日を含め何日あるかの日数
- 経過日数:開始日を0日目と考え、開始日を含めない日数
エクセルの関数では、基本的に「通算日数」ではなく「経過日数」を扱います。そのため、「開始日」または「終了日」に1日追加し、初日を含めた日数計算をする必要があります。
エクセルで日数計算する際に初日を含む方法
エクセルで日数計算する際に初日を含む方法をご紹介します。
引き算
引き算で初日を含む日数計算をする方法は、以下のとおりです。
C2セルに「=B2-A2+1」と入力し、Enterを押します。
単純な引き算「=B2-A2」で2つの日付間の日数を求められます。
しかし、これは日付の差異を求めるため、単純な引き算のみの結果では、初日(開始日)を含まない日数(19)となります。
したがって、「+1」を付け足すことで初日(開始日)を含む日数を求めることができます。
C2セルに初日(開始日)を含む日数を算出することができました。
DATEIF関数
DATEIF関数で初日を含む日数計算をする方法は、以下のとおりです。
C2セルに「=DATEDIF(A2-1,B2,"D")」と入力し、Enterを押します。
DATEDIF関数の書式は「=DATEDIF(開始日,終了日,単位)」となり、「単位」に「"
D"
」を指定することで2つの日付(開始日と終了日)間の日数を求めることができます。
しかし、その結果は初日を含まない日数となります。
そこで、「A2-1」で開始日から1を引く、つまり開始日の前日を引数として指定することで1日増えた日数を返します。
ちなみに、「=DATEDIF(A2,B2+1,"D")」でも同様の結果を得ることができます(終了日を1日延ばす)。
C2セルに初日(開始日)を含む日数を算出することができました。
DAYS関数
DAYS関数で初日を含む日数計算をする方法は、以下のとおりです。
C2セルに「=DAYS(B2,A2-1)」と入力し、Enterを押します。
DAYS関数は、開始日から終了日の期間の日数をもとめる関数で、書式は「=DAYS(終了日,開始日)」となります。
DAYS関数も日付を指定するだけだと、初日を含まない日数となります。
「DATEDIF関数」の例と同じく「A2-1」で開始日の前日を引数として指定しています。
ただし、DAYS関数の場合は第1引数として「終了日」を、第2引数として「開始日」を指定するため、順番に注意が必要です。
C2セルに初日(開始日)を含む日数を算出することができました。