EOMONTH関数とは
EOMONTH関数とは、指定した月数の分だけ、後または前の月の月末日を取得する関数です。
エクセル上での説明は下記のようになってます。
開始日 には、計算の起算日となる日付のシリアル値を指定します。
かみ砕いていうと、月末って何日?を教えてくれる関数という事です。
EOMONTH関数の使い方
まずは使い方について。
式:=EOMONTH(開始日,月)
直接、開始日や月を入力する場合は、開始日はダブルクオーテーションで囲みましょう。
月は囲んでも囲まなくても、どちらでも良いです。
実例を挙げると、下記のようになります。(2023/2/10の1カ月後の月末日付を取得する場合)
式:=EOMONTH(“2023/2/10”,1)
すると、2023/3/31という結果が返ってきます。
また、今回は西暦を使っていますが、和暦にも対応しており、R5/2/10でも、R5.2.10でも機能します。
そしてEOMONTH関数は、開始日と月のどちらにもセル参照が使えますので、式内に直接日付を入力しなくても大丈夫です。
式:=EOMONTH(A1,A2)
EOMONTH関数を使ってみる
使ってみると言いつつ、使い方の時点でほぼほぼ紹介は済んでしまいました。
なので、ここでは少し突っ込んだ使い方を紹介していきます。
1カ月前を指定
月にマイナス値を指定すると、後ではなく前を探してくれます。
例:=EOMONTH(“2023/2/10”,-1)
この場合1カ月前、つまり1月の月末日が結果となるので、2023/1/31が返ってきます。
年をまたぐ
年をまたぐ場合、2023/13/31みたいなバカな結果にはなりませんので安心してください。
例:=EOMONTH(“2023/12/10”,1)
月数に小数点
月数に0.5などの小数を入力してもエラーにはなりません。
なりませんが、小数点以下は切り捨てられているようで、0.9は0、1.1は1として扱われていますので、わざわざ小数を使う意味はないでしょう。
実用例
このEOMONTH関数、実際にはどういう時に使えるのか、少しですが実例をご紹介。
1年間の簡易カレンダー
スタートの日付さえ入力すれば、月初~月末、日数までがわかる、簡易カレンダーが簡単に作れます。
まずは月初(今回は2023/1/1とします)を入力し、月末用のセルにEOMONTH関数を使います。
次の月初のセルに、月末+1になる式を入力します。
今回の場合、C2+1ですね。
それが翌月月初となるので、月末セルの方はオートフィルやコピペで、最初に作ったEOMONTH関数の式を持ってきましょう。
あとは、月初と月末の両方が数式となったB3とC3セルを範囲選択し、そのままオートフィルでどこまでも期間を広げる事ができます。
オマケで、月末-月初+1という式を作れば、その月が何日あるのかも取得できます。
半年って何日あるの?が計算できる
月末-月初+1で、その月が何日あるのか計算できると紹介しました。
この、月末部分を少しいじる事で、半年って何日あるの?、3カ月って何日あるの?みたいな事も調べる事ができます。
月単位の契約期間が計算できる
4月に契約を結び、6カ月を契約期間とした場合、契約満了日はいつ?といった事を計算できます。
ただし、EOMONTH関数で計算する場合は、月の途中から契約開始した場合でも、1日から契約した場合と同じ満了日にしたい時に限ります。
もし、4/1開始なら9/30、4/2開始なら10/1を満了とするように、日まで細かく計算したい場合は、EDATE関数の方が向いてます。
その場合、=EDATE(契約開始日,期間)-1という式になると思いますが、3/30と3/31の満了日が、同じ9/29になってしまう点は注意して使ってください。
EDATE関数について詳しく知りたい方はコチラの記事をご覧ください。

書式設定に注意
書式って、デフォルトは標準になってるじゃないですか。
すると、EOMONTH関数で式を組むと、日付じゃなくて数値が表示されてしまうんですよね。
なので、EOMONTH関数の結果が日付ではなくシリアル値になってしまった場合は、後からでも間に合いますので、書式を日付にしてあげてください。
コメント