- ベストアンサー
エクセルで時間計算の式を入力した結果、0:00が表示される原因は?
- エクセルで計算式を入力する際、一部のセルに数式が含まれていると、結果として0:00が表示されることがあります。具体的には、特定のセルに数値や式が入力されていない場合にこの現象が発生します。
- この現象は、エクセルの数式によるシリアル値の誤差によるものと考えられます。エクセルは内部的に数値を計算する際、シリアル値という形式で扱います。
- 一般的に、ゼロ値は非表示になるため、数値が0であれば表示されないはずです。しかし、数式による計算結果に誤差が生じている場合、0:00という表示になることがあります。これは、数式の計算における丸め誤差や桁落ちなどが原因とされています。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
- ベストアンサー
Excelの数値の精度は20桁くらいではなかったでしょうか。日付時刻のシリアル値はE+4 のオーダーですから、E-17なら、ほぼ誤差のオ-ダーですね。質問者さんの「誤差説」に賛成したくなります。 データが入っていないJ7の有無で式の計算結果が変わることについては、これは何の根拠もない、まったくの想像ですが、J7の有無によって演算の順序が変わり、それで誤差の出方が変わる、ということはないのでしょうか。この可能性については、カッコを使用してテストすることができるかもしれません。いずれにしても、計算には誤差がつきもの、ということですね。
その他の回答 (2)
- gtsp
- ベストアンサー率14% (12/83)
エクセルでは24時間を1として時間を計算します。 0.5は12:00、0.75は18:00です。 時間表示にした場合計算の結果が正数ならば5でも100でも0:00と表示されます。(正数の5は5日ととらえて計算しています)計算上は0ではないために数字は表示されます。 計算式の中に正数が入る場合それを分解するための数式が必要です。 5分の場合は(0:05)と入力する等 時間だけの+-の場合(24:00以上の表示) セルの書式 表示形式 ユーザー定義 [h]:mm:ss(この:ssはサンプルのところをいじって消しておいたほうがよいでしょう) 説明が分かりにくかったり質問を誤解していたらすみません。
お礼
ありがとうございます。 書式自体は全て時間([h]:mm)で統一されています。 セル(データも数式も入力していない)を数式に含むことでその事象が発生することがなぞです。
- mshr1962
- ベストアンサー率39% (7417/18945)
1時間は1/24=0.416666...... 1分間は1/24/60=0.000694444....... このようにシリアル値にすると端数が発生します。 なるべく端数を出さないようにすると言うのなら =ROUND((Q7-G7-I7-P7-J7)*1440,0)/1440 としてください。 ※1440=24*60のことで、上記は分単位に四捨五入しています。
お礼
ありがとうございます。 シリアル値についてはある程度理解はしているのですが問題はデータの入ってないセルを、数式に入れるだけで端数が出るというのが不可解な謎なんです。 わかりましたら引き続きお願いいたします。
お礼
う゛ぉぉ~~できました(T_T)/ あなたは神です。 順番を入れ替えただけで0:00表示がなくなりました。 どうもありがとうございましたm(_ _)m
補足
誤差説、あるんですねそういうの・・・ありがとうございます。ということは引いていく順番を変えれば誤差はなくなるんですかね。 一度、いろいろな順番で試して見ます。 でも全部-ばっかりなんで引く順番とか関係するのが不思議ですね。 シリアル値もある程度熟知してたつもりですが初めての経験です。