━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
     ◆◆◆◆ エクセルの不思議 ◆◆◆◆
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

じゃあ、次にエクセルのお勉強でーす。

エクセルにDate関数ってあるのご存知でしょうか?

知らないという方に一応説明しておきます。

Date関数というのは人間の日付をコンピュータの日付に変換する関数です。

例えば、

人間の日付     コンピュータの日付
2004.10.16     =DATE(2004,10,16)

となり、DATE関数のセルには「2004/10/16」と表示されます。

全然変わらないじゃん!って思っている人いますよね。
でも、実際にはこのセルの中の本当の値は、
セルの表示形式を「標準」に変更していただくと、「38276」という値に
なるんです。
(セルの表示形式は、メニューの「書式」−「セル」から)

でも、最初からセルの中に
「2004/10/16」と入力しても、まったく上と同じ結果になります。

じゃあ、なんでDATE関数が必要なの?

たぶん、年や月や日を別々のセルに入力した場合に、いいんじゃない。
ということだと思います。

たとえば、年をA1のセル、月をB1のセル、日をC1のセルに入力して
別のセルに=DATE(A1,B1,C1)と入力すれば、日付がちゃんとでてくると
いうわけです。

--------------------------------------------------------------

でも、ここで疑問が・・・・・。
●この38276という数字って何?

実はWindowsのコンピュータの場合は、1900年1月1日を1として今日が何日目
という計算をして、その数字を出しているんです。
これを「シリアル値」といいます。

でも、さらに疑問が・・・・・。
●マッキントッシュではどうなるの?
実は、マッキントッシュのコンピュータでは1904年1月1日を1として
計算しているんです。
だからマッキントッシュのエクセルで、同じDATE関数を使うと、
Windowsで38276という数字は、マックでは36814という数字になるんですね。

つまり、WindowsとMacintoshでは、1462日の違いが生じるんです。

なんでまた、マッキントッシュは1904年1月1日を基準日としたんでしょうね。
僕の予想では、1904年というのは真空管が発明された年なんですね。
世界最初のコンピュータは真空管で出来ていたんですね。
だから、1904年・・・・・・かもね。(あまりあてにはなりませんが)

ここで、さらに疑問が・・・・。
●マッキントッシュで作ったエクセルのシートをWindowsのコンピュータに
持ってきたらどうなるの????

やってみました。(Try it now!です)

実は、マッキントッシュのエクセルのファイルをウィンドウズに持ってきても
シート上の日付の基準は変化しないんです。(1904年1月1日が基準)

マッキントッシュから持ってきたエクセルのシート上では、マッキントッシュ
のシリアル値が保持されているんですね。
もちろん日付も変化しません。

ここで、ウィンドウズで作成したDATE関数のセルをマックにコピー&貼り付け
したり、その逆もやってみました。

その結果、貼り付けた日付は、変化しないのに、38267という数字は36814と
いう数字に変化するんですね。
つまり、シリアル値は貼り付けられたシートに応じて変化するということなん
です。

すなわち、「シート単位のシリアル値保存の法則」というわけです。
シート自体に日付管理があり、ウィンドウズやマック間でコピー&貼り付けを
行っても問題ないように作られているようなんです。

最初は、ブック全体での日付管理と考えていましたが、マックからコピーした
ファイルをウィンドウズで起動し、このブックにシートを追加すると、
新しく作成したシートは、ウィンドウズの日付管理になるんです。

でも、1つだけやってはいけないことがあります。

それは、ウィンドウズで作ったシートとマックで作ったシート間で
日付に関する計算式を作っていけないという点です。
(これは、大きな間違いを引き起こします)

※ちなみに、今回使用したマックはMacOS9.1です。OSXではまだやっていません。

ということで、本には絶対書いていないエクセルでした。

お仕事場に、マックとウィンドウズがある人は注意してくださいね。


2004/10/16 第6号 反・資格宣言 copyright(c)NokoTech Lab. All Right Reserved.