いきなり答える備忘録

Google Workspace(旧G Suite)・Microsoft 365・LibreOfficeなどに関するメモ

(LibreOffice Calc)指定した月の日数を取得する(DAYSINMONTH関数)

 LibreOffice Calcで、指定した月(日付あるいは年・月で指定)の日数を求める方法についてです。Excelだとちょっと工夫が必要ですが、Calcにはそのものズバリの関数があります。

  • 「=DAYSINMONTH(日付)」という式で、日付が属する月の日数を求めることができます。

手順

 B列に日付が並んでいます。
 これに対しC3セルに次のような式を入力し、下方にコピーして、それぞれの日付が属する月の日数を求めています。

 C3セル

=DAYSINMONTH(B3)

 DAYSINMONTHはExcelやGoogleスプレッドシートにはないCalc独自の関数です。
 このように日付を引数にするだけで、その月の日数を取得できます。


 こちらは年・月の値がそれぞれ数値で与えられているケースです。
 ここでもD3セル以降に次のような式を入力し、月の日数を求めています。

 D3セル

=DAYSINMONTH(DATE(B3,C3,1))

 DATE関数を使って当該年月の初日(1日)の日付を生成し、DAYSINMONTH関数に渡してしています。
 ただしこのケースではExcelライクに「=DAY(DATE(B3,C3+1,0))」などとした方が簡潔かもしれません。