[[20030916180306]] 『シリアル値について』(ジジ) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『シリアル値について』(ジジ)

1900年2月29日のシリアル値は60となります。
1900年は閏年ではないはずですが、なぜこのような
設定になっているのでしょうか。
他の平年の2月29日のシリアル値は存在しません。
「シリアル値」「閏年」「1900/2/29]等で過去ログを
拝見しましたが、答えを見つける事が出来ませんでした。
もし見逃していたらごめんなさい。
よろしくお願いいたします。


答えは簡単、1900年は閏年だからです。

どなたか判りませんがありがとうございます(ジジ)

閏年とは西暦紀元年数が4で割り切れる年でも100の
倍数の年は400の倍数の年以外は閏年としないで
平年とする。というふうにきおくしています。
(間違えていたらお許しください。)
つまり1900年は4でも100でもわりきれますが
400では割り切れないので、平年という事になると
おもいます。


来年は閏年ですよね。400でわりきれますか?

おっしゃる通りです。(ジジ)

2004年は4でしか割り切れないので閏年なのです。
言い換えますと紀元年数が
4で割り切れる年は閏年です。
4でも100でも割り切れる年は平年です。
4でも100でも400でも割り切れるとしは閏年です。
2000年がよい例で閏年でした。


 横から失礼します。Yosh!です。
↓こちらに1900年の閏年判定について書かれています。参考にしてください。(Yosh!)
[XL2002]Excelで用いている閏年の判定方法
http://support.microsoft.com/default.aspx?scid=kb;JA;118923

 (ジジ)さんへの回答者は誰なんでしょうか?

 ↑と言う私もHNを入れ忘れました。(^_^;)(ヤー坊)

結局は1900年は閏年なのか閏年で無いのか知りたいです・・・。(イエローヒロ)

 ジジさんの見解が正しいです。1900年は閏年ではありません。
しかし、都合上エクセル(と、その他の表計算ソフト?)では1900年を
閏年として判定しているという事ですね。(Yosh!)

 (Yosh!)さん、有難う御座いました!
 取り敢えずこれでゆっくり眠れます。(イエローヒロ)

(Yosh!)様有難う御座います。(ジジ)
奇遇です、私は今回が2回目の質問なんですが、
前回も(Yosh!)様に教えて頂きました、
内容を確認する事が出来ました、良く理解できました、
何時もお世話になり有難うございます。
すこしあわてん坊の(ヤー坊)様有難う御座います。
そして(イエローヒロ)様有難う御座います。
よもや(イエローヒロ)様からコメントを頂けるとは
おもいも寄りませんでした、
HNを(ヒロ)様から(イエローヒロ)様に変えられた
いきさつ等克明に覚えております、光栄です。
これからも、皆様にお世話になると思います、
どうぞよろしくお願い致します。

 今回の質問とはあまり関係ないかもしれませんが、VBAのことも書いてみようと思います
 じつはVBAでは1900/2/29はありません。

 下記のマクロはセルA1の値を日付けに変換し、メッセージボックスに表示します
 標準モジュールにコピーしてください

 Sub test()
   MsgBox CDate(Range("A1").Value)
 End Sub

 セルA1に 60 を入力し、書式設定を日付けにすると、セルには1900/2/29と表示されますが、
 マクロを実行するとメッセージボックスには 1900/2/28 と表示されると思います
 A1の値を 1 にして実行すると、1899/12/31と表示されます

 つまり、
 ワークシート上では 1900/1/1 を 1 として 1900/2/29 で 60 になりますが、
 VBAでは 1899/12/31 を 1 として 1900/2/28 で 60 になるのです 
 みなさん知ってました?  (りな)


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.