Googleスプレッドシートで、指定した月の初日(つまり1日)の日付を求める方法についてです。
- 年と月が与えられている場合は「=DATE(年,月,1)」で月の初日が求められます。
- 日付(年月日)が与えられている場合は「=EOMONTH(日付,-1)+1」で月の初日が求められます。
手順
年と月の値が与えられている場合
B3セルに年(2020)が、C3セルに月(7)が入力されています。
そこでD3セルに次のように入力することで月の初日、つまり2020年7月1日の日付を取得しています。
D3セル
=DATE(B3,C3,1)
DATE関数に年,月,日の3つの引数を与えることで日付を取得することができます。
そこで3つの引数をそれぞれB3,C3,1とすることで2020/07/01という日付を得ています。
なお「2020/7/1」と表示させる場合は書式の変更で対応します(「表示形式」→「数字」→「表示形式の詳細設定」→「カスタム数値形式」と進み、パターンを「yyyy/m/d」と指定)。
日付(年月日)が与えられている場合
B3セルに「2020/7/12」という日付が入力されています。
そこでC3セルに次のように入力して2020年7月1日の日付を取得しています。
C3セル
=EOMONTH(B3,-1)+1
EOMONTH関数は指定した日が属する月の末日の日付を求める関数です。さらに第2引数を指定することで○か月後や○か月前の月の月末の日付を求めることもできます。そこで第2引数を-1とし、先月末の日付を求めます。そして最後に1(1日)を足すことで当月の初日を求めています。