Excel で 2 つの日付の間の月を数えるにはどうすればよいですか?
Excel で 2 つの日付の間の月数を取得する最良の方法は、DATEDIF 関数を使用することです。この関数では、開始日と終了日を指定する必要があります。その後、結果を取得する単位も指定する必要があります。
次の例では、セル A2 と B2 に 2 つの日付があります。
2 つの日付の間の月を取得する数式 (DATEDIF)
- まず、セル C2 に DATEDIF 関数を入力します。
- その後、最初の引数で、開始日が入っているセル A2 を参照します。
- 次に、2 番目の引数で、終了日が入っている B2 を参照します。
- ここで、3 番目の引数に「m」を入力します。
- 最後に Enter キーを押して結果を取得します。
ここでは、結果に 11 があることがわかります。2021 年 3 月から 2022 年 2 月までの間に 11 か月あるため、これは正しいです。
=DATEDIF(A2,B2,"m")
DATEDIF 関数を入力したときに見たように、Excel では関数が表示されず、リスト内の関数のリストにもこの関数が見つかりません。 DATEDIF について詳しくは、こちらをご覧ください。 DATEDIF を使用して、月と日を 1 つのセルに個別に表示することもできます。
上記の式では、DATEDIF を 2 回使用して月、次に日を取得し、2 つの式を連結して完全な結果を取得しました。
YEARFRAC を使用した 2 つの日付の間の月
2 つの日付間の月を数える必要がある場合もありますが、月が終了した後の日数も考慮する必要があります。この場合、YEARFRAC 関数を使用するのが最善の方法です。
YEARFRAC では、最初の引数に開始日を指定し、次に 2 番目の引数に終了日を指定する必要があります。その後、アスタリスク記号を使用して 12 を掛けます。
Enter キーを押すと、これら 2 つの日付間の合計月数が整数として、日数が小数として取得されます。
上の例では、開始日が 2021 年 3 月 1 日、終了日が 2022 年 2 月 23 日となります。ここで YEARFRAC を使用すると、11.73 が返されます。11 は月数、0.73 は 2 月の 23 日を表す 10 進数値です。
結果を丸めたい場合は、この数式をround関数でラップします。
YEAR + MONTH 関数を使用して 2 つの日付間の月を取得する
2 つの日付の間の月数を取得するために使用できる別の方法があります。 YEAR 関数と MONTH 関数を組み合わせると、月を返す次の数式を作成できます。
=(YEAR(B2)-YEAR(A2))*12+MONTH(B2)-MONTH(A2)
この関数を理解するには、次の 2 つの部分に分ける必要があります。
最初の部分では year 関数があり、終了日の年、次に開始日の年を取得し、それを 12 で乗算します。この部分は、日付間の月数を返します。
式のこの部分は、異なる年の日付があり、両方の日付が同じ年である場合にのみ違いが生じます。その場合、この部分は計算に違いをもたらしません。ご覧のとおり、2021 年と 2022 年があり、式のこの部分の結果は 12 になります。
2 番目の部分では、開始日からの月から終了日からの月を差し引きます。そして、この部分では、アクセスできる日も無視されます。
したがって、2 月 (2) から 3 月 (3) を差し引くと、結果は -1 になります。
その後、最後に 12 から -1 が差し引かれ、2 つの日付間の合計月数である 11 が得られます。どの方法が一番気に入っているかと聞かれたら、使いやすく、ユーザーが理解しやすい DATEDIF だと思います。