プロが教える店舗&オフィスのセキュリティ対策術

こんにちわ。
エクセルの日付計算について不思議なことが起こったので、質問に来ました。

エクセルのセルに「2011/10/31」と打ち込み書式を標準あるいは数値にすると「40847」となります。
これは1900/1/1から40847日たったと理解しております。
が、「1950/11/15」を標準あるいは数値にすると「18582」になります。これに61年分の日付つまり365*61=22265を足すと40847と2011/10/31と同じ値になってしまいます。

上記文章の書き方を変えると↓
2011/10/31→→40847・・・(1)
1950/11/15→→18582・・・(2)
61*365=22265・・・(3)
(2)+(3)=(1)
18582+22265=40847
つまり
1950/11/15の61年後=2011/10/31

私の考えでは1950/11/15の61年後は2011/11/15になると思っていたのですが、実際には上記のようになってしまいました。

なぜこのようなことが起こるのかがわからず困る&困惑しております。
勘違いがあるかもしれませんがアドバイスやご意見をお願いします。

A 回答 (4件)

お話を整理しましょう。


2011/10/31はシリアル値で40847
1950/10/31は18567
ところで61年後ということで61年を日にちに換算するのですが1年は365日ではありません。4年に一度うるう年があります。そのため通常は日にちに換算するときには1年を365.25日として計算します。
したがって61年は365.25×61で22280.25日となります。
このため1950/10/31の61年後は18567+22280.25=40847.25となって2011/10/31のシリアル値との違いは0.25日にすぎません。うるう年のことを考えるなら一致しているということができますね。
    • good
    • 0
この回答へのお礼

ありがとうございます。
うるう年の事を忘れておりました。
それで365.25で計算すればいいんですね!
なるほど納得です!ありがとうございました。

お礼日時:2011/04/17 01:32

こんなお話もあります。


『Excelには、意図的にバグが仕込まれているのをご存知だろうか。
 それは「1900年2月29日が存在する」というものだ。      』
続きはこちら
http://ameblo.jp/akiran-jp2/entry-10772320173.html

うるう年を判定する方法
http://support.microsoft.com/kb/214019/ja
    • good
    • 0
この回答へのお礼

こんなお話もあるんですね~^^
勉強になりました。ありがとうございます^^

お礼日時:2011/04/17 01:30

「61年分の日付つまり365*61=22265」が間違っています。

「つまり」1年は 12ヵ月だけど必ずしも 365日ではないから。

1950/11/15 がセル A1 に入力されているとき、式 =EDATE(A1,12*61) は 2011/11/15 を返します。=DATE(YEAR(A1)+61,MONTH(A1),DAY(A1)) でもOKです。
    • good
    • 0
この回答へのお礼

ありがとうございます。
うるう年の事を忘れておりました。
こんな方法もあるんですね!
なるほど納得です!
ありがとうございました。

お礼日時:2011/04/17 01:33

閏年

    • good
    • 0
この回答へのお礼

ありがとうございます。
うるう年の事を忘れておりました。
なるほど納得です!ありがとうございました。

お礼日時:2011/04/17 01:33

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!