掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
シリアル値について (ID:120490)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
> ◆ヘルプ付属のサポート技術情報(文書番号: J011319 )には やけに旧い文書番号だと思ったら……VB6ヘルプ記載の物でしたか。(^^; # JPシリーズですら無いし。 相当する現行文書は、こちらですね。 文書番号401700 (Excel 5.0) 『Q&A (日数/時間計算編)』 http://support.microsoft.com/default.aspx?scid=kb;ja;401700 文書番号402779 (Excel 95) 『[XL95] Q&A (日数/時間計算編)』 http://support.microsoft.com/default.aspx?scid=kb;ja;402779 文書番号416574 (Excel 2002) 『[XL2002] 日数および時間計算に関するワークシート関数について』 http://support.microsoft.com/default.aspx?scid=kb;ja;416574 文書番号882391 (Excel 2004) 『日数および日付の表示方法と計算方法 - 基本編』 http://support.microsoft.com/default.aspx?scid=kb;ja;882391 > 後に、実際の動作にあわせてヘルプを修正した」 > というのが正解ではないでしょうか? 先の文書にあるのは、「Excelの日付」のシリアル値の話です。 「VB/VBAにおける日付」と一緒に論じるのは、ちょっと乱暴かと。(^_^;) Excelワークシート関数においては、1.0というシリアル値は、 日付に変換した場合、Windowd版では 1900年1月1日を示し、 Mac版では 1904年1月2日を示す仕様になっています。 (Date1904プロパティで、1900年換算か1904年換算かを変更可能) 一方 VB/VBAのDate型(というか、OLE オートメーションの日付値)は、 1899年12月30日からの日数として実装されていて、 1.0というシリアル値が、1899年12月31日を示し、 2.0が、1900年1月1日となるように実装されています。 ちなみに、ExcelのDate1904モードで、「0」が1904年1月1日を 示すのは、初期の Mac で、1904年以前の日付がサポートされて いなかった事に由来しています。 一方、DOS版の Lotus 1-2-3 という表計算ソフトなどは、 1900 年から計算する日付システムになっていましたね。 なお、VB.NETのDate型(というか、.NETのSystem.DateTime構造体)は、 西暦1年1月1日からの日数として換算さるようになっており、 FromOADate/ToOADateメソッドで、OLEオートメーションの日付値との 相互変換が可能となっています。蛇足までに。
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2020 Takeshi Okamoto All Rights Reserved.