重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

【GOLF me!】初月無料お試し

こちらの掲示板に初めて質問します。
不足している情報がありましたら、随時付け加えていきたいと思います。
よろしくお願いします。

飲食店の勤怠表を作っています。
定時は役職によって変わります。

出勤時間と、退勤時間を入力して労働時間と残業時間を算出したいと考えています。
定時、労働時間、残業時間は10進法で表したいです。

1は問題ないのですが、2の残業時間が0のはずが-1.68754E-14になってしまいます。

C列とD列はプルダウンを使用しています。
一度プルダウンを外して打ち込むと正常にF2も0になりました。
ただ、プルダウンで作ってくれと言われているので修正したいと考えています。
なにが原因なのでしょうか。


A B C D E F
定時 名前 出勤  退勤  労働時間 残業時間
1 8 店長 10:00 18:00  8  0
2 7 主任  9:00  16:00  7 -1.68754E-14

A B C D E F
定時 名前  出勤  退勤  労働時間 残業時間
1 8 店長  10:00 18:00 =(D1-C1)*24 =E1-A1
2 7 主任  9:00  16:00 =(D1-C1)*24 =E1-A1

C列D列のセル書式は[h]:mm
その他はG/標準です。

よろしくお願い致します。


< 使用 アプリ:Excel for mac 2011、使用 OS:MacOSX >

「『勤怠表を作っていると定時と残業時間の差」の質問画像

A 回答 (2件)

こんばんは!



おそらく浮動小数誤差の関係だと思います。
小数点以下の数値を2進数で表す場合に起こる問題です。
時間計算などは要注意だと思います。

画像では1行目が項目行でデータが2行目以降にあるように見えますので、
F2セル(2行目のセル)の数式を
=ROUND(E2-A2,5)
としてみたらどうなりますか?

※ 小数点以下5桁で丸めています。m(_ _)m
    • good
    • 0
この回答へのお礼

こんばんは!

お返事ありがとうございます。
仰る通り浮動小数演算の誤差でした。
全く、なんのことだかさっぱりでしたが、おかげさまで解決できました。
ありがとうございます。

お礼日時:2016/02/09 22:14

>-1.68754E-14


Windows では「####…」となってしまいますが…定時の書式を[h]にして「8:00」とか入力すると近いものが出来そうな気がしました。
「『勤怠表を作っていると定時と残業時間の差」の回答画像1
    • good
    • 0
この回答へのお礼

詳しいお返事ありがとうございました。
E列の浮動小数点演算の誤差というやつが原因だったようです。
テキスト化して修正できました。
画像つきで説明していただき、大変嬉しい限りです。
ありがとうございます。

お礼日時:2016/02/09 22:12

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!