月単位の売上やPVなどをExcelまたはGoogleスプレッドシートで管理しているのだが、月によって日数が異なるため以下のような状況が起こる場合がある。

例えば前月(2月)に比べ当月(3月)は、月でみた時の売上が伸びたが、2月と3月では日数が3日も違うので、実際に日数で割るとそこまで変化がなかったりする。

この「売上を日数で割る」をExcelで管理すると以下のようなものになる。

J列の日数について、手入力するのは論外として、別シートに月と日数の参照テーブルを用意しVLOOKUP関数で取得するという方法がまず挙げられる。

しかしもっと簡単な方法で月の日数を取得する方法があったので、今回はそれを紹介する。

EOMONTH関数とDAY関数を組み合わせる

まずは結論から。

以下のとおり、EOMONTH関数とDAY関数を組み合わせることで、月の日数を取得することができる。

=DAY(EOMONTH(A2,0))

EOMONTH関数はあまり馴染みがない関数かもしれないが、引数に指定した月の月末の日付を返す関数だ。

この場合、A2セルの2021年3月の最終日、つまり2021/3/31を返す。

次に、取得した日付からDAY関数を使って「日」のみを取得する。

これで月の日数を簡単に得ることができる。