人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

MicrosoftはExcelの1900年方式と1904年方式をスマートに統合するつもりはないのでしょうか?640KBのMS-DOSの時代ならいざ知らず、現在のCPUパワーを持ってすれば何らかの解決方法があると思うのですが。

●質問者: infinitete
●カテゴリ:コンピュータ
○ 状態 :終了
└ 回答数 : 2/2件

▽最新の回答へ

質問者から

すみません、日付の計算方法の事です。


1 ● 椶櫚

もし仮に統合するとなると、ユーザー数の少ないMac側の1904年方式(後方互換)を切り捨てたうえで、新バージョンでは1904年方式のデータを読み込んだ際にデータコンバートし、保存は強制的に1900年方式に、という事になろうかと思います。1904年方式しか扱えない古いプログラムでは、新バージョンの吐き出したデータが使えなくなりますので、パッチを配布するような形になるのかな?。するとパッチの存在を知らないユーザーからの問い合わせが殺到するでしょうから、リアル世界においての短期集中的な混乱が起こるであろう事が十分予測できます。逆に1900年方式を切り捨てる場合には、その混乱規模はさらに数十倍ほどに膨れ上がるであろうと見込まなければなりません。

パッチはプログラムのバージョンごとに作成する必要がありますし、パッチに不具合があってデータコンバートに失敗でもしようものなら大問題になりますので、けっこう大掛かりなプロジェクトになると思います。もちろん、パッチの作成期間×投入するエンジニアの人数、分のコストもかかります。修正パッチですから収入は0です。

問題があるとすれば、むしろそういったデータ統一に伴うパッチ開発コスト、過去のデータ資産の扱い、現状に不満を感じているわけではない大多数のMacユーザーからの反感を買うことになる事等々であって、ユーザーPCのスペックがどうこうという問題ではないと思いますよ。


infiniteteさんのコメント
ご回答ありがとうございます。まさに今起こっている問題はWindowsとMacのOS間のデータ互換で、日付データの入ったファイルをOS間でやりとりする全てのユーザーに降りかかる問題です。 現状に不満を感じているわけではない(問題の存在に気づいていない)大多数のExcelユーザーがクラウドなどを通じてファイルをやりとりするときに起こる不具合を想定しています。 過去に遡ってパッチを配布しろとまでは言うつもりはありません。昔のExcelで.xlsxファイルを開けられるようにしろと言わないのと同じです。過去データに不備があることを織り込んだうえで新しいバージョンのアプリケーションを作り、互換性を優先したデフォルト設定にできないかと思ってるわけです。 webブラウザが文字コードを自動判定するようなイメージです。 日本人はかつて文書データをやりとりするケースを例外的であると想定して、ワープロ専用機やフロントエンドプロセッサに外字作成機能を実装したために、印刷所から文字化けした校正が上がって来るという事態を経験しています。 今後更にデータ交換・共有の傾向は高まると思い、何らかの大きなトラブルが発生しないか危惧しているわけです。 2000年問題のように大渦がなければいいのですが。

infiniteteさんのコメント
確かにパッチを当てて、テキストエディタが文字コードを記述するようにExcelがそのファイルをどちらの方式で作成したかのフラグを立てるなりマーカーを埋め込んで置いてくれたら判定は簡単でしょうね。

2 ● tea_cup
ベストアンサー

プログラマが積み重ねた工夫の歴史なので、変更されることは無いでしょう。
(桁が足らなくなりそうになったら、今ならバイト長を伸ばせばすむので)
以下に肝を引用しますが、ぜひリンク先を読んでください。
はじめてのBillGレビューのこと - The Joel on Software Translation Project

1900年はうるう年ではない。

「これはExcelのバグだ!」 私は興奮した。

「実際はそういうわけじゃない」とエドが言った。「Lotus 123のワークシートをインポートできるようにするために、そうする必要があったんだ」

「じゃあ、Lotus 123のバグってこと?」

「そう。だけどおそらくは意図的なものだ。Lotusは640Kのメモリに詰め込む必要があった。これはあんまり大きなものじゃない。1900年を無視すれば、与えられた年がうるう年かどうか判定するのは右端の2ビットが0かどうか見るだけで済む。そのほうがずっと早くて簡単だ。たぶんLotusの連中ははるか昔のふた月が間違っていたところで問題にはならないと考えたんだろう。一方でBasicの連中は、そのふた月にこだわってエポックを1日ずらしたんだ」

「あーっ!」私は声を漏らした。そして「1904年から計算する」というチェックボックスがオプションダイアログについている理由を知ったのだ。

最後に、とっておきの質問がきた。

「分からないんだが」ビルは言った。「これをどうやって実現するのか本当に詳細に調べた者が誰かいるのか? たとえば、日付と時刻に関するあのたくさんの関数だ。Excelには日付と時刻の関数がすごくたくさんある。Basicが同じ関数を持つようになるのか? それが全部同じように動くようになるのか?」

「なります」と私は答えた。「1900年の1月と2月以外は」


infiniteteさんのコメント
ご回答ありがとうございます。 1900年の1月と2月の曜日の正確さに関して私自身はあまり興味は無いのですが、職場の隣にいる同僚と近未来の日付データの入ったExcelファイルのやりとりに難儀している次第です(彼はWindows7、私はMacOSX、プログラマはWindows7、デザイナはMacOSX)。 “シンクライアント”という言葉ももう古いかと思いますが、ローカルにデータを置かないことが当たり前になるご時世、端末の設定で日付がずれるような仕様はもうやめないかと思っているのです。

tea_cupさんのコメント
windows側で、「[1904 年から計算する] チェック ボックスをオン」して、「変更された日付の修正」をしまくるしかないのでしょうね。 https://support.microsoft.com/ja-jp/kb/214330/ja いまどきなので、office 365 を導入されては? https://www.microsoft.com/ja-jp/smb/business-news/The-effect-of-the-street-until-now-in-the-use-of-the-street-until-now/ tea_cupは、マイクロソフトさんの回し者じゃないので、詳細は、代理店へ。

infiniteteさんのコメント
おっしゃるように、MSのサポートの解決策が“「変更された日付の修正」をしまくる”だったので疑問に思ったわけです。 そうですね、最新の製品がどういう対応をしているのか確認してみます。
関連質問

●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ