「春分の日」や「秋分の日」を求めたい
日付や時刻の疑問
「INT」関数を利用します。
概要
祝日法では、国立天文台の観測に基づき、前年の2月に官報による告示により決定されてはじめて春分の日と秋分の日が正式に決まりますが、INT関数を使って暫定的に求めることができます。
以下の数式は1980~2099年対応となります。
春分の日は3月何日?
=INT(20.8431+0.242194*(年-1980)-INT((年-1980)/4))
秋分の日は9月何日?
=INT(23.2488+0.242194*(年-1980)-INT((年-1980)/4))
以上の数式をDATE関数の「日」の引数に代入することにより求めることができます。
以下の例では年がA1に入力されているため、それぞれの「年」の引数にA1を参照するように数式入力を行います。
A | B | |
---|---|---|
1 | 2005 | 年 |
2 | 春分の日 | |
3 | 秋分の日 | |
4 |
操作方法
春分の日を求める方法
- A2セルを選択して[関数の挿入]ボタンをクリックします。
- 日付/時刻関数の中からDATE関数を呼び出します。
- [関数の引数]ダイアログボックスでは、以下のようにDATE関数のそれぞれの引数ボックスに入力します。
- 年:年が入ったセル(A1)を選択
- 月:3
- 日:INT(20.8431+0.242194*(A1-1980))-INT((A1-1980)/4)
=DATE(A1,3,INT(20.8431+0.242194*(A1-1980)-INT((A1-1980)/4)))
秋分の日を求める方法
- A3セルを選択して[関数の挿入]ボタンをクリックします。
- 日付/時刻関数の中からDATE関数を呼び出します。
- [関数の引数]ダイアログボックスでは、以下のようにDATE関数のそれぞれの引数ボックスに入力します。
- 年:年が入ったセル(A1)を選択
- 月:9
- 日:INT(23.2488+0.242194*(A1-1980))-INT((A1-1980)/4)
=DATE(A1,9,INT(23.2488+0.242194*(A1-1980)-INT((A1-1980)/4)))
備考
春分の日や、秋分の日の日付を求める場合、1980年の春分や秋分となる時刻を基にするとよいでしょう。
1980年はうるう年で、春分の日は3月20日、秋分の日は9月23日でした。細かく言うと、1980年3月20日20時14分4秒が春分の瞬間の時刻であり、同年9月23日5時58分16秒が秋分の瞬間の時刻となります。日付より小さい時刻の部分をシリアル値で表すと、春分の日の場合は0.8431、秋分の日の場合は0.2488になります。
これらの数値を求めたい年から1980年を差し引いた値で乗算し、そこから1980年から求めたい年の差分を4で割ったものを差し引き、さらにINT関数によってそれぞれの値を整数にすることによって、それぞれの日付を求めることができます。
INDEX
コメント
※技術的な質問はMicrosoftコミュニティで聞いてください!